// This file is auto-generated, don't edit it import * as $dara from '@darabonba/typescript'; export class DescribeCapacityReservationsRequestPrivatePoolOptions extends $dara.Model { /** * @remarks * The IDs of capacity reservations. The value can be a JSON array that consists of up to 100 capacity reservation IDs. Separate the IDs with commas (,). * * @example * ["crp-bp1gubrkqutenqdd****", "crp-bp67acfmxazb5****"] */ ids?: string; static names(): { [key: string]: string } { return { ids: 'Ids', }; } static types(): { [key: string]: any } { return { ids: 'string', }; } validate() { super.validate(); } constructor(map?: { [key: string]: any }) { super(map); } } export class DescribeCapacityReservationsRequestTag extends $dara.Model { /** * @remarks * The key of tag N of the capacity reservation. Valid values of N: 1 to 20. * * If you specify a single tag to query resources, up to 1,000 resources to which the tag is added are returned. If you specify multiple tags to query resources, up to 1,000 resources to which all specified tags are added are returned. To query more than 1,000 resources that have specified tags added, call the [ListTagResources](https://help.aliyun.com/document_detail/110425.html) operation. * * @example * TestKey */ key?: string; /** * @remarks * The value of tag N of the capacity reservation. Valid values of N: 1 to 20. * * @example * TestValue */ value?: string; static names(): { [key: string]: string } { return { key: 'Key', value: 'Value', }; } static types(): { [key: string]: any } { return { key: 'string', value: 'string', }; } validate() { super.validate(); } constructor(map?: { [key: string]: any }) { super(map); } } export class DescribeCapacityReservationsRequest extends $dara.Model { privatePoolOptions?: DescribeCapacityReservationsRequestPrivatePoolOptions; /** * @remarks * The billing method of the instance. Valid values: * * * PostPaid: pay-as-you-go. * * PrePaid: subscription. * * Default value: PostPaid. * * @example * PostPaid */ instanceChargeType?: string; /** * @remarks * The instance type of the capacity reservation. You can specify this parameter to query only effective capacity reservations. To query capacity reservations that are released, you must specify PrivatePoolOptions.Ids. * * @example * ecs.c6.large */ instanceType?: string; /** * @remarks * The maximum number of entries per page. * * Maximum value: 100 * * Default value: 10. * * @example * 10 */ maxResults?: number; /** * @remarks * The pagination token that is used in the next request to retrieve a new page of results. You must specify the token that is obtained from the previous query as the value of the NextToken parameter. * * @example * caeba0bbb2be03f84eb48b699f0a4883 */ nextToken?: string; ownerAccount?: string; ownerId?: number; /** * @remarks * The operating system of the instance. Valid values: * * * windows: Windows operating systems. * * linux: Linux operating systems. * * all: all operating system types. * * Default value: all. * * @example * linux */ platform?: string; /** * @remarks * The region ID of the capacity reservation. You can call the [DescribeRegions](https://help.aliyun.com/document_detail/25609.html) operation to query the most recent region list. * * This parameter is required. * * @example * cn-hangzhou */ regionId?: string; /** * @remarks * The ID of the resource group to which the capacity reservation belongs. If you specify this parameter to query resources, up to 1,000 resources that belong to the specified resource group can be displayed in the response. * * > Resources in the default resource group are displayed in the response regardless of whether you specify this parameter. * * @example * rg-bp67acfmxazb4p**** */ resourceGroupId?: string; resourceOwnerAccount?: string; resourceOwnerId?: number; /** * @remarks * The status of the capacity reservation. Valid values: * * * All: All states. * * Pending: The capacity reservation is being initialized. Scheduled capacity reservations enter the Pending state after they are created. * * Preparing: The capacity reservation is being prepared. Scheduled capacity reservations are in the Preparing state while resources are being provisioned. * * Prepared: The capacity reservation is to take effect. After resources are provisioned, scheduled capacity reservations remain in the Prepared state until they take effect. * * Active: The capacity reservation is in effect. * * Released: The capacity reservation is manually or automatically released when it expires. * * If you do not specify this parameter, capacity reservations in states other than Pending and Released are queried. * * @example * Active */ status?: string; /** * @remarks * The tags of the capacity reservation. */ tag?: DescribeCapacityReservationsRequestTag[]; /** * @remarks * The zone ID of the capacity reservation. * * @example * cn-hangzhou-h */ zoneId?: string; static names(): { [key: string]: string } { return { privatePoolOptions: 'PrivatePoolOptions', instanceChargeType: 'InstanceChargeType', instanceType: 'InstanceType', maxResults: 'MaxResults', nextToken: 'NextToken', ownerAccount: 'OwnerAccount', ownerId: 'OwnerId', platform: 'Platform', regionId: 'RegionId', resourceGroupId: 'ResourceGroupId', resourceOwnerAccount: 'ResourceOwnerAccount', resourceOwnerId: 'ResourceOwnerId', status: 'Status', tag: 'Tag', zoneId: 'ZoneId', }; } static types(): { [key: string]: any } { return { privatePoolOptions: DescribeCapacityReservationsRequestPrivatePoolOptions, instanceChargeType: 'string', instanceType: 'string', maxResults: 'number', nextToken: 'string', ownerAccount: 'string', ownerId: 'number', platform: 'string', regionId: 'string', resourceGroupId: 'string', resourceOwnerAccount: 'string', resourceOwnerId: 'number', status: 'string', tag: { 'type': 'array', 'itemType': DescribeCapacityReservationsRequestTag }, zoneId: 'string', }; } validate() { if(this.privatePoolOptions && typeof (this.privatePoolOptions as any).validate === 'function') { (this.privatePoolOptions as any).validate(); } if(Array.isArray(this.tag)) { $dara.Model.validateArray(this.tag); } super.validate(); } constructor(map?: { [key: string]: any }) { super(map); } }