// This file is auto-generated, don't edit it import * as $dara from '@darabonba/typescript'; export class CreatePlanMaintenanceWindowRequestTargetResourceTags extends $dara.Model { key?: string; /** * @example * 21.137.18.60 */ 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 CreatePlanMaintenanceWindowRequestTargetResource extends $dara.Model { /** * @example * rg-aekzhm7pmnvcbty */ resourceGroupId?: string; /** * @remarks * This parameter is required. * * @example * Tag */ scope?: string; tags?: CreatePlanMaintenanceWindowRequestTargetResourceTags[]; static names(): { [key: string]: string } { return { resourceGroupId: 'ResourceGroupId', scope: 'Scope', tags: 'Tags', }; } static types(): { [key: string]: any } { return { resourceGroupId: 'string', scope: 'string', tags: { 'type': 'array', 'itemType': CreatePlanMaintenanceWindowRequestTargetResourceTags }, }; } validate() { if(Array.isArray(this.tags)) { $dara.Model.validateArray(this.tags); } super.validate(); } constructor(map?: { [key: string]: any }) { super(map); } } export class CreatePlanMaintenanceWindowRequestTimePeriodRangeList extends $dara.Model { /** * @example * Tuesday,03:00 */ endTime?: string; /** * @example * Monday,22:00 */ startTime?: string; static names(): { [key: string]: string } { return { endTime: 'EndTime', startTime: 'StartTime', }; } static types(): { [key: string]: any } { return { endTime: 'string', startTime: 'string', }; } validate() { super.validate(); } constructor(map?: { [key: string]: any }) { super(map); } } export class CreatePlanMaintenanceWindowRequestTimePeriod extends $dara.Model { /** * @remarks * This parameter is required. * * @example * Weekly */ periodUnit?: string; /** * @remarks * This parameter is required. */ rangeList?: CreatePlanMaintenanceWindowRequestTimePeriodRangeList[]; static names(): { [key: string]: string } { return { periodUnit: 'PeriodUnit', rangeList: 'RangeList', }; } static types(): { [key: string]: any } { return { periodUnit: 'string', rangeList: { 'type': 'array', 'itemType': CreatePlanMaintenanceWindowRequestTimePeriodRangeList }, }; } validate() { if(Array.isArray(this.rangeList)) { $dara.Model.validateArray(this.rangeList); } super.validate(); } constructor(map?: { [key: string]: any }) { super(map); } } export class CreatePlanMaintenanceWindowRequest extends $dara.Model { /** * @remarks * This parameter is required. * * @example * true */ enable?: boolean; /** * @remarks * This parameter is required. */ planWindowName?: string; /** * @remarks * This parameter is required. * * @example * cn-hangzhou */ regionId?: string; /** * @remarks * This parameter is required. * * @example * Reboot */ supportMaintenanceAction?: string; /** * @remarks * This parameter is required. */ targetResource?: CreatePlanMaintenanceWindowRequestTargetResource; /** * @remarks * This parameter is required. */ timePeriod?: CreatePlanMaintenanceWindowRequestTimePeriod; static names(): { [key: string]: string } { return { enable: 'Enable', planWindowName: 'PlanWindowName', regionId: 'RegionId', supportMaintenanceAction: 'SupportMaintenanceAction', targetResource: 'TargetResource', timePeriod: 'TimePeriod', }; } static types(): { [key: string]: any } { return { enable: 'boolean', planWindowName: 'string', regionId: 'string', supportMaintenanceAction: 'string', targetResource: CreatePlanMaintenanceWindowRequestTargetResource, timePeriod: CreatePlanMaintenanceWindowRequestTimePeriod, }; } validate() { if(this.targetResource && typeof (this.targetResource as any).validate === 'function') { (this.targetResource as any).validate(); } if(this.timePeriod && typeof (this.timePeriod as any).validate === 'function') { (this.timePeriod as any).validate(); } super.validate(); } constructor(map?: { [key: string]: any }) { super(map); } }