@gradientedge/cdk-utils 10.6.0 → 10.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (200) hide show
  1. package/dist/app/api-destined-function/src/lib/lambda.d.ts +1 -0
  2. package/dist/app/api-destined-function/src/lib/lambda.d.ts.map +1 -0
  3. package/dist/app/api-destined-function/src/lib/lambda.js +1 -0
  4. package/dist/app/api-destined-function/src/lib/lambda.js.map +1 -0
  5. package/dist/app/api-destined-function/tsconfig.tsbuildinfo +1 -0
  6. package/dist/src/lib/aws/services/cloudwatch/main.d.ts +11 -11
  7. package/dist/src/lib/azure/common/constants.d.ts +74 -0
  8. package/dist/src/lib/azure/common/constants.js +77 -0
  9. package/dist/src/lib/azure/common/construct.d.ts +15 -3
  10. package/dist/src/lib/azure/common/construct.js +40 -4
  11. package/dist/src/lib/azure/common/stack.d.ts +3 -2
  12. package/dist/src/lib/azure/common/stack.js +25 -42
  13. package/dist/src/lib/azure/common/types.d.ts +13 -2
  14. package/dist/src/lib/azure/construct/event-handler/index.d.ts +2 -0
  15. package/dist/src/lib/azure/construct/event-handler/index.js +2 -0
  16. package/dist/src/lib/azure/construct/event-handler/main.d.ts +20 -0
  17. package/dist/src/lib/azure/construct/event-handler/main.js +139 -0
  18. package/dist/src/lib/azure/construct/event-handler/types.d.ts +35 -0
  19. package/dist/src/lib/azure/construct/event-handler/types.js +1 -0
  20. package/dist/src/lib/azure/construct/function-app/index.d.ts +2 -0
  21. package/dist/src/lib/azure/construct/function-app/index.js +2 -0
  22. package/dist/src/lib/azure/construct/function-app/main.d.ts +51 -0
  23. package/dist/src/lib/azure/construct/function-app/main.js +297 -0
  24. package/dist/src/lib/azure/construct/function-app/types.d.ts +33 -0
  25. package/dist/src/lib/azure/construct/function-app/types.js +1 -0
  26. package/dist/src/lib/azure/construct/index.d.ts +6 -0
  27. package/dist/src/lib/azure/construct/index.js +6 -0
  28. package/dist/src/lib/azure/construct/rest-api/index.d.ts +2 -0
  29. package/dist/src/lib/azure/construct/rest-api/index.js +2 -0
  30. package/dist/src/lib/azure/construct/rest-api/main.d.ts +20 -0
  31. package/dist/src/lib/azure/construct/rest-api/main.js +172 -0
  32. package/dist/src/lib/azure/construct/rest-api/types.d.ts +25 -0
  33. package/dist/src/lib/azure/construct/rest-api/types.js +1 -0
  34. package/dist/src/lib/azure/construct/rest-api-function/index.d.ts +2 -0
  35. package/dist/src/lib/azure/construct/rest-api-function/index.js +2 -0
  36. package/dist/src/lib/azure/construct/rest-api-function/main.d.ts +19 -0
  37. package/dist/src/lib/azure/construct/rest-api-function/main.js +255 -0
  38. package/dist/src/lib/azure/construct/rest-api-function/types.d.ts +29 -0
  39. package/dist/src/lib/azure/construct/rest-api-function/types.js +1 -0
  40. package/dist/src/lib/azure/construct/rest-api-with-cache/index.d.ts +2 -0
  41. package/dist/src/lib/azure/construct/rest-api-with-cache/index.js +2 -0
  42. package/dist/src/lib/azure/construct/rest-api-with-cache/main.d.ts +12 -0
  43. package/dist/src/lib/azure/construct/rest-api-with-cache/main.js +56 -0
  44. package/dist/src/lib/azure/construct/rest-api-with-cache/types.d.ts +13 -0
  45. package/dist/src/lib/azure/construct/rest-api-with-cache/types.js +1 -0
  46. package/dist/src/lib/azure/construct/site-with-webapp/index.d.ts +2 -0
  47. package/dist/src/lib/azure/construct/site-with-webapp/index.js +2 -0
  48. package/dist/src/lib/azure/construct/site-with-webapp/main.d.ts +19 -0
  49. package/dist/src/lib/azure/construct/site-with-webapp/main.js +135 -0
  50. package/dist/src/lib/azure/construct/site-with-webapp/types.d.ts +30 -0
  51. package/dist/src/lib/azure/construct/site-with-webapp/types.js +1 -0
  52. package/dist/src/lib/azure/index.d.ts +1 -0
  53. package/dist/src/lib/azure/index.js +1 -0
  54. package/dist/src/lib/azure/services/api-management/main.d.ts +83 -5
  55. package/dist/src/lib/azure/services/api-management/main.js +114 -148
  56. package/dist/src/lib/azure/services/api-management/types.d.ts +22 -1
  57. package/dist/src/lib/azure/services/app-configuration/main.d.ts +13 -1
  58. package/dist/src/lib/azure/services/app-configuration/main.js +21 -2
  59. package/dist/src/lib/azure/services/app-service/main.d.ts +5 -2
  60. package/dist/src/lib/azure/services/app-service/main.js +12 -4
  61. package/dist/src/lib/azure/services/application-insights/main.d.ts +15 -4
  62. package/dist/src/lib/azure/services/application-insights/main.js +27 -6
  63. package/dist/src/lib/azure/services/application-insights/types.d.ts +4 -1
  64. package/dist/src/lib/azure/services/authorisation/constants.d.ts +13 -0
  65. package/dist/src/lib/azure/services/authorisation/constants.js +14 -0
  66. package/dist/src/lib/azure/services/authorisation/index.d.ts +3 -0
  67. package/dist/src/lib/azure/services/authorisation/index.js +3 -0
  68. package/dist/src/lib/azure/services/authorisation/main.d.ts +84 -0
  69. package/dist/src/lib/azure/services/authorisation/main.js +120 -0
  70. package/dist/src/lib/azure/services/authorisation/types.d.ts +3 -0
  71. package/dist/src/lib/azure/services/authorisation/types.js +1 -0
  72. package/dist/src/lib/azure/services/cosmosdb/constants.d.ts +8 -0
  73. package/dist/src/lib/azure/services/cosmosdb/constants.js +10 -0
  74. package/dist/src/lib/azure/services/cosmosdb/index.d.ts +1 -0
  75. package/dist/src/lib/azure/services/cosmosdb/index.js +1 -0
  76. package/dist/src/lib/azure/services/cosmosdb/main.d.ts +47 -5
  77. package/dist/src/lib/azure/services/cosmosdb/main.js +77 -8
  78. package/dist/src/lib/azure/services/cosmosdb/types.d.ts +3 -1
  79. package/dist/src/lib/azure/services/dns/main.d.ts +9 -4
  80. package/dist/src/lib/azure/services/dns/main.js +12 -8
  81. package/dist/src/lib/azure/services/eventgrid/main.d.ts +12 -7
  82. package/dist/src/lib/azure/services/eventgrid/main.js +18 -19
  83. package/dist/src/lib/azure/services/function/main.d.ts +16 -3
  84. package/dist/src/lib/azure/services/function/main.js +122 -8
  85. package/dist/src/lib/azure/services/function/types.d.ts +3 -4
  86. package/dist/src/lib/azure/services/index.d.ts +3 -0
  87. package/dist/src/lib/azure/services/index.js +3 -0
  88. package/dist/src/lib/azure/services/key-vault/main.d.ts +22 -2
  89. package/dist/src/lib/azure/services/key-vault/main.js +28 -3
  90. package/dist/src/lib/azure/services/key-vault/types.d.ts +3 -2
  91. package/dist/src/lib/azure/services/monitor/main.d.ts +3 -1
  92. package/dist/src/lib/azure/services/monitor/main.js +3 -2
  93. package/dist/src/lib/azure/services/operational-insights/main.d.ts +13 -2
  94. package/dist/src/lib/azure/services/operational-insights/main.js +17 -3
  95. package/dist/src/lib/azure/services/operational-insights/types.d.ts +3 -1
  96. package/dist/src/lib/azure/services/portal/error.d.ts +5 -0
  97. package/dist/src/lib/azure/services/portal/error.js +10 -0
  98. package/dist/src/lib/azure/services/portal/index.d.ts +4 -0
  99. package/dist/src/lib/azure/services/portal/index.js +4 -0
  100. package/dist/src/lib/azure/services/portal/main.d.ts +33 -0
  101. package/dist/src/lib/azure/services/portal/main.js +51 -0
  102. package/dist/src/lib/azure/services/portal/renderer.d.ts +11 -0
  103. package/dist/src/lib/azure/services/portal/renderer.js +156 -0
  104. package/dist/src/lib/azure/services/portal/types.d.ts +40 -0
  105. package/dist/src/lib/azure/services/portal/types.js +1 -0
  106. package/dist/src/lib/azure/services/redis/main.d.ts +4 -2
  107. package/dist/src/lib/azure/services/redis/main.js +3 -2
  108. package/dist/src/lib/azure/services/redis/types.d.ts +1 -1
  109. package/dist/src/lib/azure/services/resource-group/main.d.ts +10 -1
  110. package/dist/src/lib/azure/services/resource-group/main.js +17 -3
  111. package/dist/src/lib/azure/services/security-center/index.d.ts +2 -0
  112. package/dist/src/lib/azure/services/security-center/index.js +2 -0
  113. package/dist/src/lib/azure/services/security-center/main.d.ts +31 -0
  114. package/dist/src/lib/azure/services/security-center/main.js +33 -0
  115. package/dist/src/lib/azure/services/security-center/types.d.ts +3 -0
  116. package/dist/src/lib/azure/services/security-center/types.js +1 -0
  117. package/dist/src/lib/azure/services/servicebus/main.d.ts +28 -22
  118. package/dist/src/lib/azure/services/servicebus/main.js +31 -26
  119. package/dist/src/lib/azure/services/servicebus/types.d.ts +4 -4
  120. package/dist/src/lib/azure/services/storage/main.d.ts +26 -5
  121. package/dist/src/lib/azure/services/storage/main.js +51 -9
  122. package/dist/src/lib/azure/services/storage/types.d.ts +7 -2
  123. package/dist/src/lib/cloudflare/common/construct.js +1 -1
  124. package/dist/src/lib/cloudflare/common/stack.d.ts +2 -2
  125. package/dist/src/lib/cloudflare/common/stack.js +25 -25
  126. package/dist/src/lib/cloudflare/services/worker/main.js +8 -1
  127. package/dist/src/lib/cloudflare/services/worker/types.d.ts +1 -0
  128. package/package.json +26 -23
  129. package/src/lib/azure/common/constants.ts +83 -0
  130. package/src/lib/azure/common/construct.ts +50 -7
  131. package/src/lib/azure/common/stack.ts +26 -43
  132. package/src/lib/azure/common/types.ts +14 -2
  133. package/src/lib/azure/construct/event-handler/index.ts +2 -0
  134. package/src/lib/azure/construct/event-handler/main.ts +183 -0
  135. package/src/lib/azure/construct/event-handler/types.ts +49 -0
  136. package/src/lib/azure/construct/function-app/index.ts +2 -0
  137. package/src/lib/azure/construct/function-app/main.ts +410 -0
  138. package/src/lib/azure/construct/function-app/types.ts +45 -0
  139. package/src/lib/azure/construct/index.ts +6 -0
  140. package/src/lib/azure/construct/rest-api/index.ts +2 -0
  141. package/src/lib/azure/construct/rest-api/main.ts +205 -0
  142. package/src/lib/azure/construct/rest-api/types.ts +33 -0
  143. package/src/lib/azure/construct/rest-api-function/index.ts +2 -0
  144. package/src/lib/azure/construct/rest-api-function/main.ts +297 -0
  145. package/src/lib/azure/construct/rest-api-function/types.ts +39 -0
  146. package/src/lib/azure/construct/rest-api-with-cache/index.ts +2 -0
  147. package/src/lib/azure/construct/rest-api-with-cache/main.ts +75 -0
  148. package/src/lib/azure/construct/rest-api-with-cache/types.ts +15 -0
  149. package/src/lib/azure/construct/site-with-webapp/index.ts +2 -0
  150. package/src/lib/azure/construct/site-with-webapp/main.ts +160 -0
  151. package/src/lib/azure/construct/site-with-webapp/types.ts +33 -0
  152. package/src/lib/azure/index.ts +1 -0
  153. package/src/lib/azure/services/api-management/main.ts +168 -152
  154. package/src/lib/azure/services/api-management/types.ts +30 -1
  155. package/src/lib/azure/services/app-configuration/main.ts +29 -2
  156. package/src/lib/azure/services/app-service/main.ts +23 -4
  157. package/src/lib/azure/services/application-insights/main.ts +46 -7
  158. package/src/lib/azure/services/application-insights/types.ts +6 -2
  159. package/src/lib/azure/services/authorisation/constants.ts +13 -0
  160. package/src/lib/azure/services/authorisation/index.ts +3 -0
  161. package/src/lib/azure/services/authorisation/main.ts +202 -0
  162. package/src/lib/azure/services/authorisation/types.ts +3 -0
  163. package/src/lib/azure/services/cosmosdb/constants.ts +9 -0
  164. package/src/lib/azure/services/cosmosdb/index.ts +1 -0
  165. package/src/lib/azure/services/cosmosdb/main.ts +158 -8
  166. package/src/lib/azure/services/cosmosdb/types.ts +3 -0
  167. package/src/lib/azure/services/dns/main.ts +33 -8
  168. package/src/lib/azure/services/eventgrid/main.ts +41 -23
  169. package/src/lib/azure/services/function/main.ts +155 -9
  170. package/src/lib/azure/services/function/types.ts +3 -4
  171. package/src/lib/azure/services/index.ts +3 -0
  172. package/src/lib/azure/services/key-vault/main.ts +47 -4
  173. package/src/lib/azure/services/key-vault/types.ts +4 -4
  174. package/src/lib/azure/services/monitor/main.ts +5 -2
  175. package/src/lib/azure/services/operational-insights/main.ts +30 -4
  176. package/src/lib/azure/services/operational-insights/types.ts +3 -1
  177. package/src/lib/azure/services/portal/error.ts +12 -0
  178. package/src/lib/azure/services/portal/index.ts +4 -0
  179. package/src/lib/azure/services/portal/main.ts +81 -0
  180. package/src/lib/azure/services/portal/renderer.ts +182 -0
  181. package/src/lib/azure/services/portal/types.ts +45 -0
  182. package/src/lib/azure/services/redis/main.ts +10 -3
  183. package/src/lib/azure/services/redis/types.ts +1 -1
  184. package/src/lib/azure/services/resource-group/main.ts +34 -3
  185. package/src/lib/azure/services/security-center/index.ts +2 -0
  186. package/src/lib/azure/services/security-center/main.ts +42 -0
  187. package/src/lib/azure/services/security-center/types.ts +3 -0
  188. package/src/lib/azure/services/servicebus/main.ts +61 -30
  189. package/src/lib/azure/services/servicebus/types.ts +4 -4
  190. package/src/lib/azure/services/storage/main.ts +91 -9
  191. package/src/lib/azure/services/storage/types.ts +11 -2
  192. package/src/lib/cloudflare/common/construct.ts +1 -1
  193. package/src/lib/cloudflare/common/stack.ts +25 -25
  194. package/src/lib/cloudflare/services/worker/main.ts +10 -1
  195. package/src/lib/cloudflare/services/worker/types.ts +8 -1
  196. package/dist/lib/lambda.d.ts +0 -17
  197. package/dist/lib/lambda.d.ts.map +0 -1
  198. package/dist/lib/lambda.js +0 -28
  199. package/dist/lib/lambda.js.map +0 -1
  200. package/dist/tsconfig.tsbuildinfo +0 -1
@@ -1,5 +1,5 @@
1
- import { GetTopicResult, SystemTopic } from '@pulumi/azure-native/eventgrid/index.js';
2
- import * as pulumi from '@pulumi/pulumi';
1
+ import { GetSystemTopicResult, SystemTopic } from '@pulumi/azure-native/eventgrid/index.js';
2
+ import { Output, ResourceOptions } from '@pulumi/pulumi';
3
3
  import { CommonAzureConstruct } from '../../common/index.js';
4
4
  import { EventgridEventSubscriptionProps, EventgridSystemTopicEventSubscriptionProps, EventgridSystemTopicProps, EventgridTopicProps, ResolveEventgridTopicProps } from './types.js';
5
5
  /**
@@ -25,40 +25,45 @@ export declare class AzureEventgridManager {
25
25
  * @param id scoped id of the resource
26
26
  * @param scope scope in which this resource is defined
27
27
  * @param props eventgrid topic properties
28
+ * @param resourceOptions Optional settings to control resource behaviour
28
29
  * @see [Pulumi Azure Native Event Grid Topic]{@link https://www.pulumi.com/registry/packages/azure-native/api-docs/eventgrid/topic/}
29
30
  */
30
- createEventgridTopic(id: string, scope: CommonAzureConstruct, props: EventgridTopicProps): import("@pulumi/azure-native/eventgrid/topic.js").Topic;
31
+ createEventgridTopic(id: string, scope: CommonAzureConstruct, props: EventgridTopicProps, resourceOptions?: ResourceOptions): import("@pulumi/azure-native/eventgrid/topic.js").Topic;
31
32
  /**
32
33
  * @summary Method to resolve an existing eventgrid topic
33
34
  * @param id scoped id of the resource
34
35
  * @param scope scope in which this resource is defined
35
36
  * @param props eventgrid topic properties
37
+ * @param resourceOptions Optional settings to control resource behaviour
36
38
  * @see [Pulumi Azure Native Event Grid Topic Lookup]{@link https://www.pulumi.com/registry/packages/azure-native/api-docs/eventgrid/topic/}
37
39
  */
38
- resolveEventgridTopic(id: string, scope: CommonAzureConstruct, props: ResolveEventgridTopicProps): pulumi.Output<GetTopicResult>;
40
+ resolveEventgridTopic(id: string, scope: CommonAzureConstruct, props: ResolveEventgridTopicProps, resourceOptions?: ResourceOptions): Output<import("@pulumi/azure-native/eventgrid/getTopic.js").GetTopicResult>;
39
41
  /**
40
42
  * @summary Method to create a new eventgrid subscription
41
43
  * @param id scoped id of the resource
42
44
  * @param scope scope in which this resource is defined
43
45
  * @param props eventgrid subscription properties
46
+ * @param resourceOptions Optional settings to control resource behaviour
44
47
  * @see [Pulumi Azure Native Event Grid Event Subscription]{@link https://www.pulumi.com/registry/packages/azure-native/api-docs/eventgrid/eventsubscription/}
45
48
  */
46
- createEventgridSubscription(id: string, scope: CommonAzureConstruct, props: EventgridEventSubscriptionProps): import("@pulumi/azure-native/eventgrid/eventSubscription.js").EventSubscription;
49
+ createEventgridSubscription(id: string, scope: CommonAzureConstruct, props: EventgridEventSubscriptionProps, resourceOptions?: ResourceOptions): import("@pulumi/azure-native/eventgrid/eventSubscription.js").EventSubscription;
47
50
  /**
48
51
  * @summary Method to create a new eventgrid system topic
49
52
  * @param id scoped id of the resource
50
53
  * @param scope scope in which this resource is defined
51
54
  * @param props eventgrid system topic properties
55
+ * @param resourceOptions Optional settings to control resource behaviour
52
56
  * @see [Pulumi Azure Native Event Grid System Topic]{@link https://www.pulumi.com/registry/packages/azure-native/api-docs/eventgrid/systemtopic/}
53
57
  */
54
- createEventgridSystemTopic(id: string, scope: CommonAzureConstruct, props: EventgridSystemTopicProps): import("@pulumi/azure-native/eventgrid/systemTopic.js").SystemTopic;
58
+ createEventgridSystemTopic(id: string, scope: CommonAzureConstruct, props: EventgridSystemTopicProps, resourceOptions?: ResourceOptions): import("@pulumi/azure-native/eventgrid/systemTopic.js").SystemTopic;
55
59
  /**
56
60
  * @summary Method to create a new eventgrid system topic subscription
57
61
  * @param id scoped id of the resource
58
62
  * @param scope scope in which this resource is defined
59
63
  * @param props eventgrid system topic subscription properties
60
64
  * @param systemTopic The system topic to attach this subscription to
65
+ * @param resourceOptions Optional settings to control resource behaviour
61
66
  * @see [Pulumi Azure Native Event Grid System Topic Event Subscription]{@link https://www.pulumi.com/registry/packages/azure-native/api-docs/eventgrid/systemtopiceventsubscription/}
62
67
  */
63
- createEventgridSystemTopicEventSubscription(id: string, scope: CommonAzureConstruct, props: EventgridSystemTopicEventSubscriptionProps, systemTopic: SystemTopic | pulumi.Output<GetTopicResult>): import("@pulumi/azure-native/eventgrid/systemTopicEventSubscription.js").SystemTopicEventSubscription;
68
+ createEventgridSystemTopicEventSubscription(id: string, scope: CommonAzureConstruct, props: EventgridSystemTopicEventSubscriptionProps, systemTopic: SystemTopic | Output<GetSystemTopicResult>, resourceOptions?: ResourceOptions): import("@pulumi/azure-native/eventgrid/systemTopicEventSubscription.js").SystemTopicEventSubscription;
64
69
  }
@@ -22,9 +22,10 @@ export class AzureEventgridManager {
22
22
  * @param id scoped id of the resource
23
23
  * @param scope scope in which this resource is defined
24
24
  * @param props eventgrid topic properties
25
+ * @param resourceOptions Optional settings to control resource behaviour
25
26
  * @see [Pulumi Azure Native Event Grid Topic]{@link https://www.pulumi.com/registry/packages/azure-native/api-docs/eventgrid/topic/}
26
27
  */
27
- createEventgridTopic(id, scope, props) {
28
+ createEventgridTopic(id, scope, props, resourceOptions) {
28
29
  if (!props)
29
30
  throw `Props undefined for ${id}`;
30
31
  // Get resource group name
@@ -41,16 +42,17 @@ export class AzureEventgridManager {
41
42
  tags: props.tags ?? {
42
43
  environment: scope.props.stage,
43
44
  },
44
- }, { parent: scope });
45
+ }, { parent: scope, ...resourceOptions });
45
46
  }
46
47
  /**
47
48
  * @summary Method to resolve an existing eventgrid topic
48
49
  * @param id scoped id of the resource
49
50
  * @param scope scope in which this resource is defined
50
51
  * @param props eventgrid topic properties
52
+ * @param resourceOptions Optional settings to control resource behaviour
51
53
  * @see [Pulumi Azure Native Event Grid Topic Lookup]{@link https://www.pulumi.com/registry/packages/azure-native/api-docs/eventgrid/topic/}
52
54
  */
53
- resolveEventgridTopic(id, scope, props) {
55
+ resolveEventgridTopic(id, scope, props, resourceOptions) {
54
56
  if (!props)
55
57
  throw `Props undefined for ${id}`;
56
58
  return getTopicOutput({
@@ -58,16 +60,17 @@ export class AzureEventgridManager {
58
60
  resourceGroupName: scope.props.resourceGroupName
59
61
  ? scope.resourceNameFormatter.format(scope.props.resourceGroupName)
60
62
  : props.resourceGroupName,
61
- }, { parent: scope });
63
+ }, { parent: scope, ...resourceOptions });
62
64
  }
63
65
  /**
64
66
  * @summary Method to create a new eventgrid subscription
65
67
  * @param id scoped id of the resource
66
68
  * @param scope scope in which this resource is defined
67
69
  * @param props eventgrid subscription properties
70
+ * @param resourceOptions Optional settings to control resource behaviour
68
71
  * @see [Pulumi Azure Native Event Grid Event Subscription]{@link https://www.pulumi.com/registry/packages/azure-native/api-docs/eventgrid/eventsubscription/}
69
72
  */
70
- createEventgridSubscription(id, scope, props) {
73
+ createEventgridSubscription(id, scope, props, resourceOptions) {
71
74
  if (!props)
72
75
  throw `Props undefined for ${id}`;
73
76
  return new EventSubscription(`${id}-es`, {
@@ -78,19 +81,19 @@ export class AzureEventgridManager {
78
81
  eventTimeToLiveInMinutes: 1440,
79
82
  maxDeliveryAttempts: 7,
80
83
  },
81
- }, { parent: scope });
84
+ }, { parent: scope, ...resourceOptions });
82
85
  }
83
86
  /**
84
87
  * @summary Method to create a new eventgrid system topic
85
88
  * @param id scoped id of the resource
86
89
  * @param scope scope in which this resource is defined
87
90
  * @param props eventgrid system topic properties
91
+ * @param resourceOptions Optional settings to control resource behaviour
88
92
  * @see [Pulumi Azure Native Event Grid System Topic]{@link https://www.pulumi.com/registry/packages/azure-native/api-docs/eventgrid/systemtopic/}
89
93
  */
90
- createEventgridSystemTopic(id, scope, props) {
94
+ createEventgridSystemTopic(id, scope, props, resourceOptions) {
91
95
  if (!props)
92
96
  throw `Props undefined for ${id}`;
93
- // Get resource group name
94
97
  const resourceGroupName = scope.props.resourceGroupName
95
98
  ? scope.resourceNameFormatter.format(scope.props.resourceGroupName)
96
99
  : props.resourceGroupName;
@@ -104,7 +107,7 @@ export class AzureEventgridManager {
104
107
  tags: props.tags ?? {
105
108
  environment: scope.props.stage,
106
109
  },
107
- }, { parent: scope });
110
+ }, { parent: scope, ...resourceOptions });
108
111
  }
109
112
  /**
110
113
  * @summary Method to create a new eventgrid system topic subscription
@@ -112,26 +115,22 @@ export class AzureEventgridManager {
112
115
  * @param scope scope in which this resource is defined
113
116
  * @param props eventgrid system topic subscription properties
114
117
  * @param systemTopic The system topic to attach this subscription to
118
+ * @param resourceOptions Optional settings to control resource behaviour
115
119
  * @see [Pulumi Azure Native Event Grid System Topic Event Subscription]{@link https://www.pulumi.com/registry/packages/azure-native/api-docs/eventgrid/systemtopiceventsubscription/}
116
120
  */
117
- createEventgridSystemTopicEventSubscription(id, scope, props, systemTopic) {
121
+ createEventgridSystemTopicEventSubscription(id, scope, props, systemTopic, resourceOptions) {
118
122
  if (!props)
119
123
  throw `Props undefined for ${id}`;
120
- // Get resource group name
121
- const resourceGroupName = scope.props.resourceGroupName
124
+ let resourceGroupName = scope.props.resourceGroupName
122
125
  ? scope.resourceNameFormatter.format(scope.props.resourceGroupName)
123
126
  : props.resourceGroupName;
124
127
  if (!resourceGroupName)
125
128
  throw `Resource group name undefined for ${id}`;
126
- // Extract system topic name
127
- const systemTopicName = systemTopic instanceof SystemTopic
128
- ? systemTopic.name
129
- : systemTopic.apply(t => t.name);
130
129
  return new SystemTopicEventSubscription(`${id}-ests`, {
131
130
  ...props,
132
131
  eventSubscriptionName: scope.resourceNameFormatter.format(props.eventSubscriptionName?.toString(), scope.props.resourceNameOptions?.eventGridSystemTopicEventSubscription),
133
- systemTopicName: systemTopicName,
134
- resourceGroupName: resourceGroupName,
135
- }, { parent: scope });
132
+ systemTopicName: systemTopic.name,
133
+ resourceGroupName: props.resourceGroupName ?? resourceGroupName,
134
+ }, { parent: scope, ...resourceOptions });
136
135
  }
137
136
  }
@@ -1,3 +1,4 @@
1
+ import { ResourceOptions } from '@pulumi/pulumi';
1
2
  import { CommonAzureConstruct } from '../../common/index.js';
2
3
  import { FunctionAppFlexConsumptionProps, FunctionAppProps, FunctionProps } from './types.js';
3
4
  /**
@@ -23,25 +24,37 @@ export declare class AzureFunctionManager {
23
24
  * @param id scoped id of the resource
24
25
  * @param scope scope in which this resource is defined
25
26
  * @param props function app properties
27
+ * @param resourceOptions Optional settings to control resource behaviour
26
28
  * @see [Pulumi Azure Native Function App]{@link https://www.pulumi.com/registry/packages/azure-native/api-docs/web/webapp/}
27
29
  */
28
- createFunctionApp(id: string, scope: CommonAzureConstruct, props: FunctionAppProps): import("@pulumi/azure-native/web/webApp.js").WebApp;
30
+ createFunctionApp(id: string, scope: CommonAzureConstruct, props: FunctionAppProps, resourceOptions?: ResourceOptions): import("@pulumi/azure-native/web/webApp.js").WebApp;
29
31
  /**
30
32
  * @summary Method to create a new function within a function app
31
33
  * @param id scoped id of the resource
32
34
  * @param scope scope in which this resource is defined
33
35
  * @param props function properties
36
+ * @param resourceOptions Optional settings to control resource behaviour
34
37
  * @see [Pulumi Azure Native Function Envelope]{@link https://www.pulumi.com/registry/packages/azure-native/api-docs/web/webappfunction/}
35
38
  * @note In Pulumi, individual functions are typically deployed via code deployment rather than as separate infrastructure resources.
36
39
  * This method is provided for API compatibility but may require additional setup.
37
40
  */
38
- createFunction(id: string, scope: CommonAzureConstruct, props: FunctionProps): import("@pulumi/azure-native/web/webAppFunction.js").WebAppFunction;
41
+ createFunction(id: string, scope: CommonAzureConstruct, props: FunctionProps, resourceOptions?: ResourceOptions): import("@pulumi/azure-native/web/webAppFunction.js").WebAppFunction;
39
42
  /**
40
43
  * @summary Method to create a new flex consumption function app
41
44
  * @param id scoped id of the resource
42
45
  * @param scope scope in which this resource is defined
43
46
  * @param props flex consumption function app properties
47
+ * @param resourceOptions Optional settings to control resource behaviour
44
48
  * @see [Pulumi Azure Native Function App (Flex Consumption)]{@link https://www.pulumi.com/registry/packages/azure-native/api-docs/web/webapp/}
45
49
  */
46
- createFunctionAppFlexConsumption(id: string, scope: CommonAzureConstruct, props: FunctionAppFlexConsumptionProps): import("@pulumi/azure-native/web/webApp.js").WebApp;
50
+ createFunctionAppFlexConsumption(id: string, scope: CommonAzureConstruct, props: FunctionAppFlexConsumptionProps, resourceOptions?: ResourceOptions): import("@pulumi/azure-native/web/webApp.js").WebApp;
51
+ /**
52
+ * @summary Method to create a new flex consumption function app
53
+ * @param id scoped id of the resource
54
+ * @param scope scope in which this resource is defined
55
+ * @param props flex consumption function app properties
56
+ * @param resourceOptions Optional settings to control resource behaviour
57
+ * @see [Pulumi Azure Native Function App (Flex Consumption)]{@link https://www.pulumi.com/registry/packages/azure-native/api-docs/web/webapp/}
58
+ */
59
+ createFunctionAppFlexConsumptionResource(id: string, scope: CommonAzureConstruct, props: FunctionAppFlexConsumptionProps, resourceOptions?: ResourceOptions): import("@pulumi/azure-native/resources/resource.js").Resource;
47
60
  }
@@ -1,4 +1,6 @@
1
+ import { Deployment, DeploymentMode, Resource } from '@pulumi/azure-native/resources/index.js';
1
2
  import { ManagedServiceIdentityType, WebApp, WebAppFunction } from '@pulumi/azure-native/web/index.js';
3
+ import { CommonAzureStack } from '../../common/index.js';
2
4
  /**
3
5
  * @classdesc Provides operations on Azure Functions using Pulumi
4
6
  * - A new instance of this class is injected into {@link CommonAzureConstruct} constructor.
@@ -22,9 +24,10 @@ export class AzureFunctionManager {
22
24
  * @param id scoped id of the resource
23
25
  * @param scope scope in which this resource is defined
24
26
  * @param props function app properties
27
+ * @param resourceOptions Optional settings to control resource behaviour
25
28
  * @see [Pulumi Azure Native Function App]{@link https://www.pulumi.com/registry/packages/azure-native/api-docs/web/webapp/}
26
29
  */
27
- createFunctionApp(id, scope, props) {
30
+ createFunctionApp(id, scope, props, resourceOptions) {
28
31
  if (!props)
29
32
  throw `Props undefined for ${id}`;
30
33
  // Get resource group name
@@ -45,18 +48,19 @@ export class AzureFunctionManager {
45
48
  tags: props.tags ?? {
46
49
  environment: scope.props.stage,
47
50
  },
48
- }, { parent: scope });
51
+ }, { parent: scope, ...resourceOptions });
49
52
  }
50
53
  /**
51
54
  * @summary Method to create a new function within a function app
52
55
  * @param id scoped id of the resource
53
56
  * @param scope scope in which this resource is defined
54
57
  * @param props function properties
58
+ * @param resourceOptions Optional settings to control resource behaviour
55
59
  * @see [Pulumi Azure Native Function Envelope]{@link https://www.pulumi.com/registry/packages/azure-native/api-docs/web/webappfunction/}
56
60
  * @note In Pulumi, individual functions are typically deployed via code deployment rather than as separate infrastructure resources.
57
61
  * This method is provided for API compatibility but may require additional setup.
58
62
  */
59
- createFunction(id, scope, props) {
63
+ createFunction(id, scope, props, resourceOptions) {
60
64
  if (!props)
61
65
  throw `Props undefined for ${id}`;
62
66
  // Get resource group name
@@ -70,16 +74,17 @@ export class AzureFunctionManager {
70
74
  config: props.configJson,
71
75
  isDisabled: props.enabled !== undefined ? !props.enabled : false,
72
76
  testData: props.testData,
73
- }, { parent: scope });
77
+ }, { parent: scope, ...resourceOptions });
74
78
  }
75
79
  /**
76
80
  * @summary Method to create a new flex consumption function app
77
81
  * @param id scoped id of the resource
78
82
  * @param scope scope in which this resource is defined
79
83
  * @param props flex consumption function app properties
84
+ * @param resourceOptions Optional settings to control resource behaviour
80
85
  * @see [Pulumi Azure Native Function App (Flex Consumption)]{@link https://www.pulumi.com/registry/packages/azure-native/api-docs/web/webapp/}
81
86
  */
82
- createFunctionAppFlexConsumption(id, scope, props) {
87
+ createFunctionAppFlexConsumption(id, scope, props, resourceOptions) {
83
88
  if (!props)
84
89
  throw `Props undefined for ${id}`;
85
90
  // Get resource group name
@@ -88,22 +93,131 @@ export class AzureFunctionManager {
88
93
  : props.resourceGroupName;
89
94
  if (!resourceGroupName)
90
95
  throw `Resource group name undefined for ${id}`;
91
- return new WebApp(`${id}-fc`, {
96
+ const functionApp = new WebApp(`${id}-fc`, {
92
97
  ...props,
93
98
  name: scope.resourceNameFormatter.format(props.name, scope.props.resourceNameOptions?.functionApp),
94
99
  location: props.location ?? scope.props.location,
95
100
  resourceGroupName: resourceGroupName,
96
101
  kind: props.kind ?? 'functionapp,linux',
102
+ httpsOnly: props.httpsOnly ?? true,
97
103
  identity: props.identity ?? {
98
104
  type: ManagedServiceIdentityType.SystemAssigned,
99
105
  },
106
+ functionAppConfig: props.functionAppConfig ?? {
107
+ runtime: {
108
+ ...props.runtime,
109
+ name: props.runtime?.name ?? 'node',
110
+ version: props.runtime?.version ?? CommonAzureStack.NODEJS_RUNTIME,
111
+ },
112
+ scaleAndConcurrency: {
113
+ ...props.scaleAndConcurrency,
114
+ instanceMemoryMB: props.scaleAndConcurrency?.instanceMemoryMB ?? 4096,
115
+ maximumInstanceCount: props.scaleAndConcurrency?.maximumInstanceCount ?? 40,
116
+ },
117
+ },
100
118
  siteConfig: props.siteConfig ?? {
101
119
  http20Enabled: true,
102
- linuxFxVersion: `${props.runtimeName ?? 'node'}|${props.runtimeVersion ?? '22'}`,
120
+ linuxFxVersion: `${props.runtime?.name ?? 'node'}|${props.runtime?.version ?? CommonAzureStack.NODEJS_RUNTIME}`,
103
121
  },
104
122
  tags: props.tags ?? {
105
123
  environment: scope.props.stage,
106
124
  },
107
- }, { parent: scope });
125
+ }, { parent: scope, ...resourceOptions });
126
+ const functionAppConfig = props.functionAppConfig;
127
+ new Deployment(`${id}-deployment`, {
128
+ resourceGroupName: resourceGroupName,
129
+ properties: {
130
+ mode: DeploymentMode.Incremental,
131
+ template: {
132
+ $schema: 'https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#',
133
+ contentVersion: '1.0.0.0',
134
+ resources: [
135
+ {
136
+ type: 'Microsoft.Web/sites',
137
+ apiVersion: '2024-04-01',
138
+ name: scope.resourceNameFormatter.format(props.name, scope.props.resourceNameOptions?.functionApp),
139
+ location: props.location ?? scope.props.location,
140
+ properties: {
141
+ functionAppConfig: {
142
+ ...props.functionAppConfig,
143
+ runtime: {
144
+ ...props.runtime,
145
+ name: props.runtime?.name ?? functionAppConfig?.runtime?.name ?? 'node',
146
+ version: props.runtime?.version ??
147
+ functionAppConfig?.runtime?.version ??
148
+ CommonAzureStack.NODEJS_RUNTIME,
149
+ },
150
+ scaleAndConcurrency: {
151
+ ...props.scaleAndConcurrency,
152
+ instanceMemoryMB: props.scaleAndConcurrency?.instanceMemoryMB ??
153
+ functionAppConfig?.scaleAndConcurrency?.instanceMemoryMB ??
154
+ 4096,
155
+ maximumInstanceCount: props.scaleAndConcurrency?.maximumInstanceCount ??
156
+ functionAppConfig?.scaleAndConcurrency?.maximumInstanceCount ??
157
+ 40,
158
+ },
159
+ siteUpdateStrategy: {
160
+ type: 'RollingUpdate',
161
+ },
162
+ },
163
+ },
164
+ },
165
+ ],
166
+ },
167
+ },
168
+ }, { parent: scope, ...resourceOptions });
169
+ return functionApp;
170
+ }
171
+ /**
172
+ * @summary Method to create a new flex consumption function app
173
+ * @param id scoped id of the resource
174
+ * @param scope scope in which this resource is defined
175
+ * @param props flex consumption function app properties
176
+ * @param resourceOptions Optional settings to control resource behaviour
177
+ * @see [Pulumi Azure Native Function App (Flex Consumption)]{@link https://www.pulumi.com/registry/packages/azure-native/api-docs/web/webapp/}
178
+ */
179
+ createFunctionAppFlexConsumptionResource(id, scope, props, resourceOptions) {
180
+ if (!props)
181
+ throw `Props undefined for ${id}`;
182
+ // Get resource group name
183
+ const resourceGroupName = scope.props.resourceGroupName
184
+ ? scope.resourceNameFormatter.format(scope.props.resourceGroupName)
185
+ : props.resourceGroupName;
186
+ if (!resourceGroupName)
187
+ throw `Resource group name undefined for ${id}`;
188
+ return new Resource(`${id}-fc`, {
189
+ apiVersion: '2024-04-01',
190
+ identity: {
191
+ type: ManagedServiceIdentityType.SystemAssigned,
192
+ },
193
+ kind: props.kind ?? 'functionapp,linux',
194
+ location: props.location ?? scope.props.location,
195
+ parentResourcePath: '',
196
+ properties: {
197
+ httpsOnly: props.httpsOnly ?? true,
198
+ serverFarmId: props.serverFarmId,
199
+ siteConfig: props.siteConfig,
200
+ functionAppConfig: {
201
+ ...props.functionAppConfig,
202
+ runtime: {
203
+ ...props.runtime,
204
+ name: props.runtime?.name ?? 'node',
205
+ version: props.runtime?.version ?? CommonAzureStack.NODEJS_RUNTIME,
206
+ },
207
+ scaleAndConcurrency: {
208
+ ...props.scaleAndConcurrency,
209
+ instanceMemoryMB: props.scaleAndConcurrency?.instanceMemoryMB ?? 4096,
210
+ maximumInstanceCount: props.scaleAndConcurrency?.maximumInstanceCount ?? 40,
211
+ },
212
+ siteUpdateStrategy: {
213
+ type: 'RollingUpdate',
214
+ },
215
+ },
216
+ },
217
+ resourceGroupName: resourceGroupName,
218
+ resourceName: scope.resourceNameFormatter.format(props.name, scope.props.resourceNameOptions?.functionApp),
219
+ resourceProviderNamespace: 'Microsoft.Web',
220
+ resourceType: 'sites',
221
+ }, { parent: scope, ...resourceOptions });
108
222
  }
109
223
  }
@@ -1,3 +1,4 @@
1
+ import { input } from '@pulumi/azure-native/types/index.js';
1
2
  import { WebAppArgs } from '@pulumi/azure-native/web/index.js';
2
3
  export interface FunctionAppProps extends WebAppArgs {
3
4
  name?: string;
@@ -12,10 +13,8 @@ export interface FunctionProps {
12
13
  }
13
14
  export interface FunctionAppFlexConsumptionProps extends WebAppArgs {
14
15
  name?: string;
15
- runtimeName?: string;
16
- runtimeVersion?: string;
16
+ runtime?: input.web.FunctionsRuntimeArgs;
17
+ scaleAndConcurrency?: input.web.FunctionsScaleAndConcurrencyArgs;
17
18
  storageAuthenticationType?: string;
18
19
  storageContainerType?: string;
19
- maximumInstanceCount?: number;
20
- instanceMemoryInMb?: number;
21
20
  }
@@ -2,14 +2,17 @@ export * from './api-management/index.js';
2
2
  export * from './app-configuration/index.js';
3
3
  export * from './app-service/index.js';
4
4
  export * from './application-insights/index.js';
5
+ export * from './authorisation/index.js';
5
6
  export * from './cosmosdb/index.js';
6
7
  export * from './dns/index.js';
7
8
  export * from './eventgrid/index.js';
8
9
  export * from './function/index.js';
9
10
  export * from './key-vault/index.js';
10
11
  export * from './operational-insights/index.js';
12
+ export * from './portal/index.js';
11
13
  export * from './monitor/index.js';
12
14
  export * from './redis/index.js';
13
15
  export * from './resource-group/index.js';
16
+ export * from './security-center/index.js';
14
17
  export * from './servicebus/index.js';
15
18
  export * from './storage/index.js';
@@ -2,14 +2,17 @@ export * from './api-management/index.js';
2
2
  export * from './app-configuration/index.js';
3
3
  export * from './app-service/index.js';
4
4
  export * from './application-insights/index.js';
5
+ export * from './authorisation/index.js';
5
6
  export * from './cosmosdb/index.js';
6
7
  export * from './dns/index.js';
7
8
  export * from './eventgrid/index.js';
8
9
  export * from './function/index.js';
9
10
  export * from './key-vault/index.js';
10
11
  export * from './operational-insights/index.js';
12
+ export * from './portal/index.js';
11
13
  export * from './monitor/index.js';
12
14
  export * from './redis/index.js';
13
15
  export * from './resource-group/index.js';
16
+ export * from './security-center/index.js';
14
17
  export * from './servicebus/index.js';
15
18
  export * from './storage/index.js';
@@ -1,5 +1,6 @@
1
+ import { ResourceOptions } from '@pulumi/pulumi';
1
2
  import { CommonAzureConstruct } from '../../common/index.js';
2
- import { KeyVaultProps } from './types.js';
3
+ import { KeyVaultProps, SecretProps } from './types.js';
3
4
  /**
4
5
  * @classdesc Provides operations on Azure Key Vault using Pulumi
5
6
  * - A new instance of this class is injected into {@link CommonAzureConstruct} constructor.
@@ -23,7 +24,26 @@ export declare class AzureKeyVaultManager {
23
24
  * @param id scoped id of the resource
24
25
  * @param scope scope in which this resource is defined
25
26
  * @param props key vault properties
27
+ * @param resourceOptions Optional settings to control resource behaviour
26
28
  * @see [Pulumi Azure Native Key Vault]{@link https://www.pulumi.com/registry/packages/azure-native/api-docs/keyvault/vault/}
27
29
  */
28
- createKeyVault(id: string, scope: CommonAzureConstruct, props: KeyVaultProps): import("@pulumi/azure-native/keyvault/vault.js").Vault;
30
+ createKeyVault(id: string, scope: CommonAzureConstruct, props: KeyVaultProps, resourceOptions?: ResourceOptions): import("@pulumi/azure-native/keyvault/vault.js").Vault;
31
+ /**
32
+ *
33
+ * @summary Method to create a new key vault secret
34
+ * @param id scoped id of the resource
35
+ * @param scope scope in which this resource is defined
36
+ * @param props key vault secret properties
37
+ * @param resourceOptions Optional settings to control resource behaviour
38
+ * @see [Pulumi Azure Native Key Vault Secret]{@link https://www.pulumi.com/registry/packages/azure-native/api-docs/keyvault/secret/}
39
+ */
40
+ createKeyVaultSecret(id: string, scope: CommonAzureConstruct, props: SecretProps, resourceOptions?: ResourceOptions): import("@pulumi/azure-native/keyvault/secret.js").Secret;
41
+ /**
42
+ * @summary Method to resolve an existing key vault
43
+ * @param scope scope in which this resource is defined
44
+ * @param vaultName the key vault name
45
+ * @param resourceGroupName the resource group name
46
+ * @param resourceOptions Optional settings to control resource behaviour
47
+ */
48
+ resolveKeyVault(scope: CommonAzureConstruct, vaultName: string, resourceGroupName: string, resourceOptions?: ResourceOptions): import("@pulumi/pulumi").Output<import("@pulumi/azure-native/keyvault/getVault.js").GetVaultResult>;
29
49
  }
@@ -1,4 +1,4 @@
1
- import { SkuFamily, SkuName, Vault } from '@pulumi/azure-native/keyvault/index.js';
1
+ import { getVaultOutput, Secret, SkuFamily, SkuName, Vault } from '@pulumi/azure-native/keyvault/index.js';
2
2
  /**
3
3
  * @classdesc Provides operations on Azure Key Vault using Pulumi
4
4
  * - A new instance of this class is injected into {@link CommonAzureConstruct} constructor.
@@ -22,9 +22,10 @@ export class AzureKeyVaultManager {
22
22
  * @param id scoped id of the resource
23
23
  * @param scope scope in which this resource is defined
24
24
  * @param props key vault properties
25
+ * @param resourceOptions Optional settings to control resource behaviour
25
26
  * @see [Pulumi Azure Native Key Vault]{@link https://www.pulumi.com/registry/packages/azure-native/api-docs/keyvault/vault/}
26
27
  */
27
- createKeyVault(id, scope, props) {
28
+ createKeyVault(id, scope, props, resourceOptions) {
28
29
  if (!props)
29
30
  throw `Props undefined for ${id}`;
30
31
  // Get resource group name
@@ -53,6 +54,30 @@ export class AzureKeyVaultManager {
53
54
  tags: props.tags ?? {
54
55
  environment: scope.props.stage,
55
56
  },
56
- }, { parent: scope });
57
+ }, { parent: scope, ...resourceOptions });
58
+ }
59
+ /**
60
+ *
61
+ * @summary Method to create a new key vault secret
62
+ * @param id scoped id of the resource
63
+ * @param scope scope in which this resource is defined
64
+ * @param props key vault secret properties
65
+ * @param resourceOptions Optional settings to control resource behaviour
66
+ * @see [Pulumi Azure Native Key Vault Secret]{@link https://www.pulumi.com/registry/packages/azure-native/api-docs/keyvault/secret/}
67
+ */
68
+ createKeyVaultSecret(id, scope, props, resourceOptions) {
69
+ if (!props)
70
+ throw `Props undefined for ${id}`;
71
+ return new Secret(`${id}`, props, { parent: scope, ...resourceOptions });
72
+ }
73
+ /**
74
+ * @summary Method to resolve an existing key vault
75
+ * @param scope scope in which this resource is defined
76
+ * @param vaultName the key vault name
77
+ * @param resourceGroupName the resource group name
78
+ * @param resourceOptions Optional settings to control resource behaviour
79
+ */
80
+ resolveKeyVault(scope, vaultName, resourceGroupName, resourceOptions) {
81
+ return getVaultOutput({ vaultName, resourceGroupName }, { parent: scope, ...resourceOptions });
57
82
  }
58
83
  }
@@ -1,4 +1,5 @@
1
- import { VaultArgs } from '@pulumi/azure-native/keyvault/index.js';
1
+ import { SecretArgs, VaultArgs } from '@pulumi/azure-native/keyvault/index.js';
2
2
  export interface KeyVaultProps extends VaultArgs {
3
- name?: string;
3
+ }
4
+ export interface SecretProps extends SecretArgs {
4
5
  }
@@ -1,3 +1,4 @@
1
+ import { ResourceOptions } from '@pulumi/pulumi';
1
2
  import { CommonAzureConstruct } from '../../common/index.js';
2
3
  import { MonitorDiagnosticSettingProps } from './types.js';
3
4
  /**
@@ -23,7 +24,8 @@ export declare class AzureMonitorManager {
23
24
  * @param id scoped id of the resource
24
25
  * @param scope scope in which this resource is defined
25
26
  * @param props monitor diagnostics settings properties
27
+ * @param resourceOptions Optional settings to control resource behaviour
26
28
  * @see [Pulumi Azure Native Monitor Diagnostic Settings]{@link https://www.pulumi.com/registry/packages/azure-native/api-docs/insights/diagnosticsetting/}
27
29
  */
28
- createMonitorDiagnosticSettings(id: string, scope: CommonAzureConstruct, props: MonitorDiagnosticSettingProps): import("@pulumi/azure-native/monitor/diagnosticSetting.js").DiagnosticSetting;
30
+ createMonitorDiagnosticSettings(id: string, scope: CommonAzureConstruct, props: MonitorDiagnosticSettingProps, resourceOptions?: ResourceOptions): import("@pulumi/azure-native/monitor/diagnosticSetting.js").DiagnosticSetting;
29
31
  }
@@ -22,14 +22,15 @@ export class AzureMonitorManager {
22
22
  * @param id scoped id of the resource
23
23
  * @param scope scope in which this resource is defined
24
24
  * @param props monitor diagnostics settings properties
25
+ * @param resourceOptions Optional settings to control resource behaviour
25
26
  * @see [Pulumi Azure Native Monitor Diagnostic Settings]{@link https://www.pulumi.com/registry/packages/azure-native/api-docs/insights/diagnosticsetting/}
26
27
  */
27
- createMonitorDiagnosticSettings(id, scope, props) {
28
+ createMonitorDiagnosticSettings(id, scope, props, resourceOptions) {
28
29
  if (!props)
29
30
  throw `Props undefined for ${id}`;
30
31
  return new DiagnosticSetting(`${id}-ds`, {
31
32
  ...props,
32
33
  name: scope.resourceNameFormatter.format(props.name?.toString(), scope.props.resourceNameOptions?.monitorDiagnosticSetting),
33
- }, { parent: scope });
34
+ }, { parent: scope, ...resourceOptions });
34
35
  }
35
36
  }
@@ -1,5 +1,6 @@
1
+ import { ResourceOptions } from '@pulumi/pulumi';
1
2
  import { CommonAzureConstruct } from '../../common/index.js';
2
- import { WorkspaceProps } from './types.js';
3
+ import { WorkspaceProps, WorkspaceTableProps } from './types.js';
3
4
  /**
4
5
  * @classdesc Provides operations on Azure Log Analytics Workspace using Pulumi
5
6
  * - A new instance of this class is injected into {@link CommonAzureConstruct} constructor.
@@ -23,7 +24,17 @@ export declare class AzureOperationalInsightsManager {
23
24
  * @param id scoped id of the resource
24
25
  * @param scope scope in which this resource is defined
25
26
  * @param props log analytics workspace properties
27
+ * @param resourceOptions Optional settings to control resource behaviour
26
28
  * @see [Pulumi Azure Native Operational Insights Workspace]{@link https://www.pulumi.com/registry/packages/azure-native/api-docs/operationalinsights/workspace/}
27
29
  */
28
- createWorkspace(id: string, scope: CommonAzureConstruct, props: WorkspaceProps): import("@pulumi/azure-native/operationalinsights/workspace.js").Workspace;
30
+ createWorkspace(id: string, scope: CommonAzureConstruct, props: WorkspaceProps, resourceOptions?: ResourceOptions): import("@pulumi/azure-native/operationalinsights/workspace.js").Workspace;
31
+ /**
32
+ * @summary Method to create a new log analytics workspace table
33
+ * @param id scoped id of the resource
34
+ * @param scope scope in which this resource is defined
35
+ * @param props log analytics workspace table properties
36
+ * @param resourceOptions Optional settings to control resource behaviour
37
+ * @see [Pulumi Azure Native Operational Insights Table]{@link https://www.pulumi.com/registry/packages/azure-native/api-docs/operationalinsights/table/}
38
+ */
39
+ createTable(id: string, scope: CommonAzureConstruct, props: WorkspaceTableProps, resourceOptions?: ResourceOptions): import("@pulumi/azure-native/operationalinsights/table.js").Table;
29
40
  }