import { ArmResource } from '@yetics/armkit-core' ; import { Construct } from 'constructs' ; schema export class Redis extends ArmResource { param scope param name param options public constructor ( scope , name , options ) { super ( scope , name , { ... options , armResourceType : 'redis' , } ) ; } } schema export class RedisFirewallRules extends ArmResource { param scope param name param options public constructor ( scope , name , options ) { super ( scope , name , { ... options , armResourceType : 'redis_firewallRules' , } ) ; } } schema export class RedisLinkedServers extends ArmResource { param scope param name param options public constructor ( scope , name , options ) { super ( scope , name , { ... options , armResourceType : 'redis_linkedServers' , } ) ; } } schema export class RedisPatchSchedules extends ArmResource { param scope param name param options public constructor ( scope , name , options ) { super ( scope , name , { ... options , armResourceType : 'redis_patchSchedules' , } ) ; } } schema export class RedisPrivateEndpointConnections extends ArmResource { param scope param name param options public constructor ( scope , name , options ) { super ( scope , name , { ... options , armResourceType : 'redis_privateEndpointConnections' , } ) ; } } schema export interface RedisOptions { schema readonly apiVersion ? : MicrosoftCacheRedisApiVersion ; schema readonly location : string ; schema readonly name : string ; schema readonly properties : RedisCreateProperties ; schema readonly resources ? : MicrosoftCacheRedisResources [ ] ; schema readonly tags ? : MicrosoftCacheRedisTags ; schema readonly type : MicrosoftCacheRedisType ; schema readonly zones ? : string [ ] ; } schema export interface RedisFirewallRulesOptions { schema readonly apiVersion ? : MicrosoftCacheRedisFirewallRulesApiVersion ; schema readonly name : string ; schema readonly properties : RedisFirewallRuleProperties ; schema readonly type : MicrosoftCacheRedisFirewallRulesType ; } schema export interface RedisLinkedServersOptions { schema readonly apiVersion ? : MicrosoftCacheRedisLinkedServersApiVersion ; schema readonly name : string ; schema readonly properties : RedisLinkedServerCreateProperties ; schema readonly type : MicrosoftCacheRedisLinkedServersType ; } schema export interface RedisPatchSchedulesOptions { schema readonly apiVersion ? : MicrosoftCacheRedisPatchSchedulesApiVersion ; schema readonly name : MicrosoftCacheRedisPatchSchedulesNamePattern ; schema readonly properties : ScheduleEntries ; schema readonly type : MicrosoftCacheRedisPatchSchedulesType ; } schema export interface RedisPrivateEndpointConnectionsOptions { schema readonly apiVersion ? : MicrosoftCacheRedisPrivateEndpointConnectionsApiVersion ; schema readonly name : string ; schema readonly properties : PrivateEndpointConnectionProperties ; schema readonly type : MicrosoftCacheRedisPrivateEndpointConnectionsType ; } export enum MicrosoftCacheRedisApiVersion { "MicrosoftCacheRedisApiVersion_2020_06_01" = '2020-06-01' } schema export interface RedisCreateProperties { schema readonly enableNonSslPort ? : boolean ; schema readonly minimumTlsVersion ? : RedisCreatePropertiesMinimumTlsVersion ; schema readonly publicNetworkAccess ? : RedisCreatePropertiesPublicNetworkAccess ; schema readonly redisConfiguration ? : RedisCreatePropertiesRedisConfiguration ; schema readonly replicasPerMaster ? : number ; schema readonly shardCount ? : number ; schema readonly sku : Sku ; schema readonly staticIP ? : RedisCreatePropertiesStaticIpPattern ; schema readonly subnetId ? : RedisCreatePropertiesSubnetIdPattern ; schema readonly tenantSettings ? : RedisCreatePropertiesTenantSettings ; } schema export class MicrosoftCacheRedisResources { public static fromRedisFirewallRulesChildResource ( value ) { return new MicrosoftCacheRedisResources ( value ) ; } public static fromRedisPatchSchedulesChildResource ( value ) { return new MicrosoftCacheRedisResources ( value ) ; } public static fromRedisLinkedServersChildResource ( value ) { return new MicrosoftCacheRedisResources ( value ) ; } public static fromRedisPrivateEndpointConnectionsChildResource ( value ) { return new MicrosoftCacheRedisResources ( value ) ; } private constructor ( value ) { Object . defineProperty ( this , 'resolve' , { value : ( ) => value } ) ; } } schema export interface MicrosoftCacheRedisTags { } export enum MicrosoftCacheRedisType { "MicrosoftCacheRedisType_MICROSOFT_CACHE_REDIS" = 'Microsoft.Cache/redis' } export enum MicrosoftCacheRedisFirewallRulesApiVersion { "MicrosoftCacheRedisFirewallRulesApiVersion_2020_06_01" = '2020-06-01' } schema export interface RedisFirewallRuleProperties { schema readonly endIP : string ; schema readonly startIP : string ; } export enum MicrosoftCacheRedisFirewallRulesType { "MicrosoftCacheRedisFirewallRulesType_MICROSOFT_CACHE_REDIS_FIREWALL_RULES" = 'Microsoft.Cache/redis/firewallRules' } export enum MicrosoftCacheRedisLinkedServersApiVersion { "MicrosoftCacheRedisLinkedServersApiVersion_2020_06_01" = '2020-06-01' } schema export interface RedisLinkedServerCreateProperties { schema readonly linkedRedisCacheId : string ; schema readonly linkedRedisCacheLocation : string ; schema readonly serverRole : RedisLinkedServerCreatePropertiesServerRole ; } export enum MicrosoftCacheRedisLinkedServersType { "MicrosoftCacheRedisLinkedServersType_MICROSOFT_CACHE_REDIS_LINKED_SERVERS" = 'Microsoft.Cache/redis/linkedServers' } export enum MicrosoftCacheRedisPatchSchedulesApiVersion { "MicrosoftCacheRedisPatchSchedulesApiVersion_2020_06_01" = '2020-06-01' } schema export class MicrosoftCacheRedisPatchSchedulesNamePattern { public static pattern ( value ) { return value ; } } schema export interface ScheduleEntries { schema readonly scheduleEntries : ScheduleEntry [ ] ; } export enum MicrosoftCacheRedisPatchSchedulesType { "MicrosoftCacheRedisPatchSchedulesType_MICROSOFT_CACHE_REDIS_PATCH_SCHEDULES" = 'Microsoft.Cache/redis/patchSchedules' } export enum MicrosoftCacheRedisPrivateEndpointConnectionsApiVersion { "MicrosoftCacheRedisPrivateEndpointConnectionsApiVersion_2020_06_01" = '2020-06-01' } schema export interface PrivateEndpointConnectionProperties { schema readonly privateEndpoint ? : PrivateEndpoint ; schema readonly privateLinkServiceConnectionState : PrivateLinkServiceConnectionState ; schema readonly provisioningState ? : PrivateEndpointConnectionPropertiesProvisioningState ; } export enum MicrosoftCacheRedisPrivateEndpointConnectionsType { "MicrosoftCacheRedisPrivateEndpointConnectionsType_MICROSOFT_CACHE_REDIS_PRIVATE_ENDPOINT_CONNECTIONS" = 'Microsoft.Cache/redis/privateEndpointConnections' } export enum RedisCreatePropertiesMinimumTlsVersion { "RedisCreatePropertiesMinimumTlsVersion_1_0" = '1.0' , "RedisCreatePropertiesMinimumTlsVersion_1_1" = '1.1' , "RedisCreatePropertiesMinimumTlsVersion_1_2" = '1.2' } export enum RedisCreatePropertiesPublicNetworkAccess { ENABLED = 'Enabled' , DISABLED = 'Disabled' } schema export interface RedisCreatePropertiesRedisConfiguration { } schema export interface Sku { schema readonly capacity : number ; schema readonly family : SkuFamily ; schema readonly name : SkuName ; } schema export class RedisCreatePropertiesStaticIpPattern { public static pattern ( value ) { return value ; } } schema export class RedisCreatePropertiesSubnetIdPattern { public static pattern ( value ) { return value ; } } schema export interface RedisCreatePropertiesTenantSettings { } schema export interface RedisFirewallRulesChildResource { schema readonly apiVersion : RedisFirewallRulesChildResourceApiVersion ; schema readonly name : string ; schema readonly properties : RedisFirewallRuleProperties ; schema readonly type : RedisFirewallRulesChildResourceType ; } schema export interface RedisPatchSchedulesChildResource { schema readonly apiVersion : RedisPatchSchedulesChildResourceApiVersion ; schema readonly name : RedisPatchSchedulesChildResourceName ; schema readonly properties : ScheduleEntries ; schema readonly type : RedisPatchSchedulesChildResourceType ; } schema export interface RedisLinkedServersChildResource { schema readonly apiVersion : RedisLinkedServersChildResourceApiVersion ; schema readonly name : string ; schema readonly properties : RedisLinkedServerCreateProperties ; schema readonly type : RedisLinkedServersChildResourceType ; } schema export interface RedisPrivateEndpointConnectionsChildResource { schema readonly apiVersion : RedisPrivateEndpointConnectionsChildResourceApiVersion ; schema readonly name : string ; schema readonly properties : PrivateEndpointConnectionProperties ; schema readonly type : RedisPrivateEndpointConnectionsChildResourceType ; } export enum RedisLinkedServerCreatePropertiesServerRole { PRIMARY = 'Primary' , SECONDARY = 'Secondary' } schema export interface ScheduleEntry { schema readonly dayOfWeek : ScheduleEntryDayOfWeek ; schema readonly maintenanceWindow ? : string ; schema readonly startHourUtc : number ; } schema export interface PrivateEndpoint { } schema export interface PrivateLinkServiceConnectionState { schema readonly actionsRequired ? : string ; schema readonly description ? : string ; schema readonly status ? : PrivateLinkServiceConnectionStateStatus ; } export enum PrivateEndpointConnectionPropertiesProvisioningState { SUCCEEDED = 'Succeeded' , CREATING = 'Creating' , DELETING = 'Deleting' , FAILED = 'Failed' } export enum SkuFamily { C = 'C' , P = 'P' } export enum SkuName { BASIC = 'Basic' , STANDARD = 'Standard' , PREMIUM = 'Premium' } export enum RedisFirewallRulesChildResourceApiVersion { "RedisFirewallRulesChildResourceApiVersion_2020_06_01" = '2020-06-01' } export enum RedisFirewallRulesChildResourceType { FIREWALL_RULES = 'firewallRules' } export enum RedisPatchSchedulesChildResourceApiVersion { "RedisPatchSchedulesChildResourceApiVersion_2020_06_01" = '2020-06-01' } export enum RedisPatchSchedulesChildResourceName { DEFAULT = 'default' } export enum RedisPatchSchedulesChildResourceType { PATCH_SCHEDULES = 'patchSchedules' } export enum RedisLinkedServersChildResourceApiVersion { "RedisLinkedServersChildResourceApiVersion_2020_06_01" = '2020-06-01' } export enum RedisLinkedServersChildResourceType { LINKED_SERVERS = 'linkedServers' } export enum RedisPrivateEndpointConnectionsChildResourceApiVersion { "RedisPrivateEndpointConnectionsChildResourceApiVersion_2020_06_01" = '2020-06-01' } export enum RedisPrivateEndpointConnectionsChildResourceType { PRIVATE_ENDPOINT_CONNECTIONS = 'privateEndpointConnections' } export enum ScheduleEntryDayOfWeek { MONDAY = 'Monday' , TUESDAY = 'Tuesday' , WEDNESDAY = 'Wednesday' , THURSDAY = 'Thursday' , FRIDAY = 'Friday' , SATURDAY = 'Saturday' , SUNDAY = 'Sunday' , EVERYDAY = 'Everyday' , WEEKEND = 'Weekend' } export enum PrivateLinkServiceConnectionStateStatus { PENDING = 'Pending' , APPROVED = 'Approved' , REJECTED = 'Rejected' }