alchemy-kubernetes-native 0.1.1

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.
@@ -0,0 +1,491 @@
1
+ import { PropsInput, Resource } from "alchemy";
2
+ import * as Effect from "effect/Effect";
3
+ import * as Provider from "alchemy/Provider";
4
+ import * as Kubernetes from "alchemy/Kubernetes";
5
+ import { ClusterTransport } from "alchemy/Kubernetes";
6
+ import * as Layer from "effect/Layer";
7
+ import { IConfigMap } from "kubernetes-models/v1/ConfigMap";
8
+ import { IEndpoints } from "kubernetes-models/v1/Endpoints";
9
+ import { IEvent } from "kubernetes-models/v1/Event";
10
+ import { ILimitRange } from "kubernetes-models/v1/LimitRange";
11
+ import { INamespace } from "kubernetes-models/v1/Namespace";
12
+ import { INode } from "kubernetes-models/v1/Node";
13
+ import { IPersistentVolume } from "kubernetes-models/v1/PersistentVolume";
14
+ import { IPersistentVolumeClaim } from "kubernetes-models/v1/PersistentVolumeClaim";
15
+ import { IPod } from "kubernetes-models/v1/Pod";
16
+ import { IPodTemplate } from "kubernetes-models/v1/PodTemplate";
17
+ import { IReplicationController } from "kubernetes-models/v1/ReplicationController";
18
+ import { IResourceQuota } from "kubernetes-models/v1/ResourceQuota";
19
+ import { IService } from "kubernetes-models/v1/Service";
20
+ import { IServiceAccount } from "kubernetes-models/v1/ServiceAccount";
21
+ import { IControllerRevision } from "kubernetes-models/apps/v1/ControllerRevision";
22
+ import { IDaemonSet } from "kubernetes-models/apps/v1/DaemonSet";
23
+ import { IDeployment } from "kubernetes-models/apps/v1/Deployment";
24
+ import { IReplicaSet } from "kubernetes-models/apps/v1/ReplicaSet";
25
+ import { IStatefulSet } from "kubernetes-models/apps/v1/StatefulSet";
26
+ import { ICronJob } from "kubernetes-models/batch/v1/CronJob";
27
+ import { IJob } from "kubernetes-models/batch/v1/Job";
28
+ import { IIPAddress } from "kubernetes-models/networking.k8s.io/v1/IPAddress";
29
+ import { IIngress } from "kubernetes-models/networking.k8s.io/v1/Ingress";
30
+ import { IIngressClass } from "kubernetes-models/networking.k8s.io/v1/IngressClass";
31
+ import { INetworkPolicy } from "kubernetes-models/networking.k8s.io/v1/NetworkPolicy";
32
+ import { IServiceCIDR } from "kubernetes-models/networking.k8s.io/v1/ServiceCIDR";
33
+ import { IClusterRole } from "kubernetes-models/rbac.authorization.k8s.io/v1/ClusterRole";
34
+ import { IClusterRoleBinding } from "kubernetes-models/rbac.authorization.k8s.io/v1/ClusterRoleBinding";
35
+ import { IRole } from "kubernetes-models/rbac.authorization.k8s.io/v1/Role";
36
+ import { IRoleBinding } from "kubernetes-models/rbac.authorization.k8s.io/v1/RoleBinding";
37
+ import { IHorizontalPodAutoscaler } from "kubernetes-models/autoscaling/v2/HorizontalPodAutoscaler";
38
+ import { IPodDisruptionBudget } from "kubernetes-models/policy/v1/PodDisruptionBudget";
39
+ import { ICSIDriver } from "kubernetes-models/storage.k8s.io/v1/CSIDriver";
40
+ import { ICSINode } from "kubernetes-models/storage.k8s.io/v1/CSINode";
41
+ import { ICSIStorageCapacity } from "kubernetes-models/storage.k8s.io/v1/CSIStorageCapacity";
42
+ import { IStorageClass } from "kubernetes-models/storage.k8s.io/v1/StorageClass";
43
+ import { IVolumeAttachment } from "kubernetes-models/storage.k8s.io/v1/VolumeAttachment";
44
+ import { IVolumeAttributesClass } from "kubernetes-models/storage.k8s.io/v1/VolumeAttributesClass";
45
+ import { ICustomResourceDefinition } from "kubernetes-models/apiextensions.k8s.io/v1/CustomResourceDefinition";
46
+ //#region src/providers.d.ts
47
+ declare const Providers_base: Provider.ProviderCollection<Providers, "KubernetesApi">;
48
+ declare class Providers extends Providers_base {}
49
+ //#endregion
50
+ //#region src/types.d.ts
51
+ interface ObjectMetadata {
52
+ name: string;
53
+ namespace?: string | undefined;
54
+ labels?: Record<string, string>;
55
+ annotations?: Record<string, string>;
56
+ uid?: string | undefined;
57
+ resourceVersion?: string | undefined;
58
+ generation?: number | undefined;
59
+ creationTimestamp?: string;
60
+ deletionTimestamp?: string;
61
+ managedFields?: unknown[];
62
+ finalizers?: string[];
63
+ [key: string]: unknown;
64
+ }
65
+ interface KubernetesObject {
66
+ apiVersion: string;
67
+ kind: string;
68
+ metadata: ObjectMetadata;
69
+ spec?: unknown;
70
+ status?: unknown;
71
+ [key: string]: unknown;
72
+ }
73
+ interface ObjectRef {
74
+ apiVersion: string;
75
+ kind: string;
76
+ name: string;
77
+ namespace?: string | undefined;
78
+ }
79
+ type DeletionPropagation = "Foreground" | "Background" | "Orphan";
80
+ type WaitFor = {
81
+ condition: string;
82
+ status?: "True" | "False" | "Unknown";
83
+ } | {
84
+ jsonPath: string;
85
+ equals: unknown;
86
+ };
87
+ interface LifecycleOptions {
88
+ cluster: Kubernetes.ClusterLike;
89
+ /** Establishes an Alchemy graph dependency without adding a manifest field. */
90
+ dependsOn?: string | undefined;
91
+ fieldManager?: string;
92
+ forceConflicts?: boolean;
93
+ skipAwait?: boolean;
94
+ timeoutSeconds?: number;
95
+ waitFor?: WaitFor;
96
+ deletionPropagation?: DeletionPropagation;
97
+ replaceOnChanges?: string[];
98
+ }
99
+ type ServerMetadataKeys = "uid" | "resourceVersion" | "generation" | "creationTimestamp" | "deletionTimestamp" | "deletionGracePeriodSeconds" | "managedFields" | "selfLink";
100
+ type DesiredMetadata<T> = Omit<NonNullable<T>, ServerMetadataKeys | "name"> & {
101
+ name: string;
102
+ namespace?: string;
103
+ };
104
+ type DesiredObject<T> = T extends {
105
+ metadata?: infer M;
106
+ } ? Omit<T, "apiVersion" | "kind" | "status" | "metadata"> & {
107
+ metadata: DesiredMetadata<M>;
108
+ } : Omit<T, "apiVersion" | "kind" | "status"> & {
109
+ metadata: {
110
+ name: string;
111
+ namespace?: string;
112
+ };
113
+ };
114
+ type BuiltinProps<T> = LifecycleOptions & DesiredObject<T>;
115
+ interface ObjectProps extends Omit<LifecycleOptions, "dependsOn"> {
116
+ manifest: KubernetesObject;
117
+ mode?: "object" | "patch";
118
+ }
119
+ interface ObjectDependencyBinding {
120
+ dependency: string | undefined;
121
+ }
122
+ type Field<T, K extends PropertyKey> = K extends keyof T ? T[K] : undefined;
123
+ interface ObjectAttributes<T = KubernetesObject> {
124
+ connection: Kubernetes.Connection;
125
+ ref: ObjectRef;
126
+ apiVersion: string;
127
+ kind: string;
128
+ name: string;
129
+ namespace: string | undefined;
130
+ uid: string | undefined;
131
+ resourceVersion: string | undefined;
132
+ generation: number | undefined;
133
+ metadata: Field<T, "metadata">;
134
+ spec: Field<T, "spec">;
135
+ status: Field<T, "status">;
136
+ live: T;
137
+ mode: "object" | "patch";
138
+ }
139
+ type ObjectResource<T = KubernetesObject> = Resource<"KubernetesApi.Object", ObjectProps, ObjectAttributes<T>, ObjectDependencyBinding, Providers>;
140
+ type BuiltinConstructor<T> = (id: string, props: PropsInput<BuiltinProps<T>>) => import("effect/Effect").Effect<ObjectResource<T>, never, Providers>;
141
+ //#endregion
142
+ //#region src/generated.d.ts
143
+ declare const api: {
144
+ readonly core: {
145
+ readonly v1: {
146
+ readonly ConfigMap: BuiltinConstructor<IConfigMap>;
147
+ readonly ConfigMapPatch: BuiltinConstructor<IConfigMap>;
148
+ readonly Endpoints: BuiltinConstructor<IEndpoints>;
149
+ readonly EndpointsPatch: BuiltinConstructor<IEndpoints>;
150
+ readonly Event: BuiltinConstructor<IEvent>;
151
+ readonly EventPatch: BuiltinConstructor<IEvent>;
152
+ readonly LimitRange: BuiltinConstructor<ILimitRange>;
153
+ readonly LimitRangePatch: BuiltinConstructor<ILimitRange>;
154
+ readonly Namespace: BuiltinConstructor<INamespace>;
155
+ readonly NamespacePatch: BuiltinConstructor<INamespace>;
156
+ readonly Node: BuiltinConstructor<INode>;
157
+ readonly NodePatch: BuiltinConstructor<INode>;
158
+ readonly PersistentVolume: BuiltinConstructor<IPersistentVolume>;
159
+ readonly PersistentVolumePatch: BuiltinConstructor<IPersistentVolume>;
160
+ readonly PersistentVolumeClaim: BuiltinConstructor<IPersistentVolumeClaim>;
161
+ readonly PersistentVolumeClaimPatch: BuiltinConstructor<IPersistentVolumeClaim>;
162
+ readonly Pod: BuiltinConstructor<IPod>;
163
+ readonly PodPatch: BuiltinConstructor<IPod>;
164
+ readonly PodTemplate: BuiltinConstructor<IPodTemplate>;
165
+ readonly PodTemplatePatch: BuiltinConstructor<IPodTemplate>;
166
+ readonly ReplicationController: BuiltinConstructor<IReplicationController>;
167
+ readonly ReplicationControllerPatch: BuiltinConstructor<IReplicationController>;
168
+ readonly ResourceQuota: BuiltinConstructor<IResourceQuota>;
169
+ readonly ResourceQuotaPatch: BuiltinConstructor<IResourceQuota>;
170
+ readonly Service: BuiltinConstructor<IService>;
171
+ readonly ServicePatch: BuiltinConstructor<IService>;
172
+ readonly ServiceAccount: BuiltinConstructor<IServiceAccount>;
173
+ readonly ServiceAccountPatch: BuiltinConstructor<IServiceAccount>;
174
+ };
175
+ };
176
+ readonly apps: {
177
+ readonly v1: {
178
+ readonly ControllerRevision: BuiltinConstructor<IControllerRevision>;
179
+ readonly ControllerRevisionPatch: BuiltinConstructor<IControllerRevision>;
180
+ readonly DaemonSet: BuiltinConstructor<IDaemonSet>;
181
+ readonly DaemonSetPatch: BuiltinConstructor<IDaemonSet>;
182
+ readonly Deployment: BuiltinConstructor<IDeployment>;
183
+ readonly DeploymentPatch: BuiltinConstructor<IDeployment>;
184
+ readonly ReplicaSet: BuiltinConstructor<IReplicaSet>;
185
+ readonly ReplicaSetPatch: BuiltinConstructor<IReplicaSet>;
186
+ readonly StatefulSet: BuiltinConstructor<IStatefulSet>;
187
+ readonly StatefulSetPatch: BuiltinConstructor<IStatefulSet>;
188
+ };
189
+ };
190
+ readonly batch: {
191
+ readonly v1: {
192
+ readonly CronJob: BuiltinConstructor<ICronJob>;
193
+ readonly CronJobPatch: BuiltinConstructor<ICronJob>;
194
+ readonly Job: BuiltinConstructor<IJob>;
195
+ readonly JobPatch: BuiltinConstructor<IJob>;
196
+ };
197
+ };
198
+ readonly networking: {
199
+ readonly v1: {
200
+ readonly IPAddress: BuiltinConstructor<IIPAddress>;
201
+ readonly IPAddressPatch: BuiltinConstructor<IIPAddress>;
202
+ readonly Ingress: BuiltinConstructor<IIngress>;
203
+ readonly IngressPatch: BuiltinConstructor<IIngress>;
204
+ readonly IngressClass: BuiltinConstructor<IIngressClass>;
205
+ readonly IngressClassPatch: BuiltinConstructor<IIngressClass>;
206
+ readonly NetworkPolicy: BuiltinConstructor<INetworkPolicy>;
207
+ readonly NetworkPolicyPatch: BuiltinConstructor<INetworkPolicy>;
208
+ readonly ServiceCIDR: BuiltinConstructor<IServiceCIDR>;
209
+ readonly ServiceCIDRPatch: BuiltinConstructor<IServiceCIDR>;
210
+ };
211
+ };
212
+ readonly rbac: {
213
+ readonly v1: {
214
+ readonly ClusterRole: BuiltinConstructor<IClusterRole>;
215
+ readonly ClusterRolePatch: BuiltinConstructor<IClusterRole>;
216
+ readonly ClusterRoleBinding: BuiltinConstructor<IClusterRoleBinding>;
217
+ readonly ClusterRoleBindingPatch: BuiltinConstructor<IClusterRoleBinding>;
218
+ readonly Role: BuiltinConstructor<IRole>;
219
+ readonly RolePatch: BuiltinConstructor<IRole>;
220
+ readonly RoleBinding: BuiltinConstructor<IRoleBinding>;
221
+ readonly RoleBindingPatch: BuiltinConstructor<IRoleBinding>;
222
+ };
223
+ };
224
+ readonly autoscaling: {
225
+ readonly v2: {
226
+ readonly HorizontalPodAutoscaler: BuiltinConstructor<IHorizontalPodAutoscaler>;
227
+ readonly HorizontalPodAutoscalerPatch: BuiltinConstructor<IHorizontalPodAutoscaler>;
228
+ };
229
+ };
230
+ readonly policy: {
231
+ readonly v1: {
232
+ readonly PodDisruptionBudget: BuiltinConstructor<IPodDisruptionBudget>;
233
+ readonly PodDisruptionBudgetPatch: BuiltinConstructor<IPodDisruptionBudget>;
234
+ };
235
+ };
236
+ readonly storage: {
237
+ readonly v1: {
238
+ readonly CSIDriver: BuiltinConstructor<ICSIDriver>;
239
+ readonly CSIDriverPatch: BuiltinConstructor<ICSIDriver>;
240
+ readonly CSINode: BuiltinConstructor<ICSINode>;
241
+ readonly CSINodePatch: BuiltinConstructor<ICSINode>;
242
+ readonly CSIStorageCapacity: BuiltinConstructor<ICSIStorageCapacity>;
243
+ readonly CSIStorageCapacityPatch: BuiltinConstructor<ICSIStorageCapacity>;
244
+ readonly StorageClass: BuiltinConstructor<IStorageClass>;
245
+ readonly StorageClassPatch: BuiltinConstructor<IStorageClass>;
246
+ readonly VolumeAttachment: BuiltinConstructor<IVolumeAttachment>;
247
+ readonly VolumeAttachmentPatch: BuiltinConstructor<IVolumeAttachment>;
248
+ readonly VolumeAttributesClass: BuiltinConstructor<IVolumeAttributesClass>;
249
+ readonly VolumeAttributesClassPatch: BuiltinConstructor<IVolumeAttributesClass>;
250
+ };
251
+ };
252
+ readonly apiextensions: {
253
+ readonly v1: {
254
+ readonly CustomResourceDefinition: BuiltinConstructor<ICustomResourceDefinition>;
255
+ readonly CustomResourceDefinitionPatch: BuiltinConstructor<ICustomResourceDefinition>;
256
+ };
257
+ };
258
+ };
259
+ declare const core: {
260
+ readonly v1: {
261
+ readonly ConfigMap: BuiltinConstructor<IConfigMap>;
262
+ readonly ConfigMapPatch: BuiltinConstructor<IConfigMap>;
263
+ readonly Endpoints: BuiltinConstructor<IEndpoints>;
264
+ readonly EndpointsPatch: BuiltinConstructor<IEndpoints>;
265
+ readonly Event: BuiltinConstructor<IEvent>;
266
+ readonly EventPatch: BuiltinConstructor<IEvent>;
267
+ readonly LimitRange: BuiltinConstructor<ILimitRange>;
268
+ readonly LimitRangePatch: BuiltinConstructor<ILimitRange>;
269
+ readonly Namespace: BuiltinConstructor<INamespace>;
270
+ readonly NamespacePatch: BuiltinConstructor<INamespace>;
271
+ readonly Node: BuiltinConstructor<INode>;
272
+ readonly NodePatch: BuiltinConstructor<INode>;
273
+ readonly PersistentVolume: BuiltinConstructor<IPersistentVolume>;
274
+ readonly PersistentVolumePatch: BuiltinConstructor<IPersistentVolume>;
275
+ readonly PersistentVolumeClaim: BuiltinConstructor<IPersistentVolumeClaim>;
276
+ readonly PersistentVolumeClaimPatch: BuiltinConstructor<IPersistentVolumeClaim>;
277
+ readonly Pod: BuiltinConstructor<IPod>;
278
+ readonly PodPatch: BuiltinConstructor<IPod>;
279
+ readonly PodTemplate: BuiltinConstructor<IPodTemplate>;
280
+ readonly PodTemplatePatch: BuiltinConstructor<IPodTemplate>;
281
+ readonly ReplicationController: BuiltinConstructor<IReplicationController>;
282
+ readonly ReplicationControllerPatch: BuiltinConstructor<IReplicationController>;
283
+ readonly ResourceQuota: BuiltinConstructor<IResourceQuota>;
284
+ readonly ResourceQuotaPatch: BuiltinConstructor<IResourceQuota>;
285
+ readonly Service: BuiltinConstructor<IService>;
286
+ readonly ServicePatch: BuiltinConstructor<IService>;
287
+ readonly ServiceAccount: BuiltinConstructor<IServiceAccount>;
288
+ readonly ServiceAccountPatch: BuiltinConstructor<IServiceAccount>;
289
+ };
290
+ }, apps: {
291
+ readonly v1: {
292
+ readonly ControllerRevision: BuiltinConstructor<IControllerRevision>;
293
+ readonly ControllerRevisionPatch: BuiltinConstructor<IControllerRevision>;
294
+ readonly DaemonSet: BuiltinConstructor<IDaemonSet>;
295
+ readonly DaemonSetPatch: BuiltinConstructor<IDaemonSet>;
296
+ readonly Deployment: BuiltinConstructor<IDeployment>;
297
+ readonly DeploymentPatch: BuiltinConstructor<IDeployment>;
298
+ readonly ReplicaSet: BuiltinConstructor<IReplicaSet>;
299
+ readonly ReplicaSetPatch: BuiltinConstructor<IReplicaSet>;
300
+ readonly StatefulSet: BuiltinConstructor<IStatefulSet>;
301
+ readonly StatefulSetPatch: BuiltinConstructor<IStatefulSet>;
302
+ };
303
+ }, batch: {
304
+ readonly v1: {
305
+ readonly CronJob: BuiltinConstructor<ICronJob>;
306
+ readonly CronJobPatch: BuiltinConstructor<ICronJob>;
307
+ readonly Job: BuiltinConstructor<IJob>;
308
+ readonly JobPatch: BuiltinConstructor<IJob>;
309
+ };
310
+ }, networking: {
311
+ readonly v1: {
312
+ readonly IPAddress: BuiltinConstructor<IIPAddress>;
313
+ readonly IPAddressPatch: BuiltinConstructor<IIPAddress>;
314
+ readonly Ingress: BuiltinConstructor<IIngress>;
315
+ readonly IngressPatch: BuiltinConstructor<IIngress>;
316
+ readonly IngressClass: BuiltinConstructor<IIngressClass>;
317
+ readonly IngressClassPatch: BuiltinConstructor<IIngressClass>;
318
+ readonly NetworkPolicy: BuiltinConstructor<INetworkPolicy>;
319
+ readonly NetworkPolicyPatch: BuiltinConstructor<INetworkPolicy>;
320
+ readonly ServiceCIDR: BuiltinConstructor<IServiceCIDR>;
321
+ readonly ServiceCIDRPatch: BuiltinConstructor<IServiceCIDR>;
322
+ };
323
+ }, rbac: {
324
+ readonly v1: {
325
+ readonly ClusterRole: BuiltinConstructor<IClusterRole>;
326
+ readonly ClusterRolePatch: BuiltinConstructor<IClusterRole>;
327
+ readonly ClusterRoleBinding: BuiltinConstructor<IClusterRoleBinding>;
328
+ readonly ClusterRoleBindingPatch: BuiltinConstructor<IClusterRoleBinding>;
329
+ readonly Role: BuiltinConstructor<IRole>;
330
+ readonly RolePatch: BuiltinConstructor<IRole>;
331
+ readonly RoleBinding: BuiltinConstructor<IRoleBinding>;
332
+ readonly RoleBindingPatch: BuiltinConstructor<IRoleBinding>;
333
+ };
334
+ }, autoscaling: {
335
+ readonly v2: {
336
+ readonly HorizontalPodAutoscaler: BuiltinConstructor<IHorizontalPodAutoscaler>;
337
+ readonly HorizontalPodAutoscalerPatch: BuiltinConstructor<IHorizontalPodAutoscaler>;
338
+ };
339
+ }, policy: {
340
+ readonly v1: {
341
+ readonly PodDisruptionBudget: BuiltinConstructor<IPodDisruptionBudget>;
342
+ readonly PodDisruptionBudgetPatch: BuiltinConstructor<IPodDisruptionBudget>;
343
+ };
344
+ }, storage: {
345
+ readonly v1: {
346
+ readonly CSIDriver: BuiltinConstructor<ICSIDriver>;
347
+ readonly CSIDriverPatch: BuiltinConstructor<ICSIDriver>;
348
+ readonly CSINode: BuiltinConstructor<ICSINode>;
349
+ readonly CSINodePatch: BuiltinConstructor<ICSINode>;
350
+ readonly CSIStorageCapacity: BuiltinConstructor<ICSIStorageCapacity>;
351
+ readonly CSIStorageCapacityPatch: BuiltinConstructor<ICSIStorageCapacity>;
352
+ readonly StorageClass: BuiltinConstructor<IStorageClass>;
353
+ readonly StorageClassPatch: BuiltinConstructor<IStorageClass>;
354
+ readonly VolumeAttachment: BuiltinConstructor<IVolumeAttachment>;
355
+ readonly VolumeAttachmentPatch: BuiltinConstructor<IVolumeAttachment>;
356
+ readonly VolumeAttributesClass: BuiltinConstructor<IVolumeAttributesClass>;
357
+ readonly VolumeAttributesClassPatch: BuiltinConstructor<IVolumeAttributesClass>;
358
+ };
359
+ }, apiextensions: {
360
+ readonly v1: {
361
+ readonly CustomResourceDefinition: BuiltinConstructor<ICustomResourceDefinition>;
362
+ readonly CustomResourceDefinitionPatch: BuiltinConstructor<ICustomResourceDefinition>;
363
+ };
364
+ };
365
+ //#endregion
366
+ //#region src/provider.d.ts
367
+ declare const FQN_ANNOTATION = "alchemy.run/fqn";
368
+ declare const INSTANCE_ANNOTATION = "alchemy.run/instance-id";
369
+ declare const desiredObject: ({ props, fqn, instanceId }: {
370
+ props: ObjectProps;
371
+ fqn: string;
372
+ instanceId: string;
373
+ }) => KubernetesObject;
374
+ declare const sanitizeObservedObject: (object: KubernetesObject) => KubernetesObject;
375
+ declare const desiredProjection: (desired: unknown, observed: unknown) => unknown;
376
+ declare const ObjectProvider: () => Layer.Layer<Provider.Provider<ObjectResource>, never, never>;
377
+ declare const providers: () => Layer.Layer<Providers | Provider.Provider<import("alchemy").Random>, never, never>;
378
+ //#endregion
379
+ //#region src/resource.d.ts
380
+ declare const ObjectResource$1: import("alchemy").ResourceClass<ObjectResource>;
381
+ type GenericObjectProps<T extends KubernetesObject> = LifecycleOptions & {
382
+ manifest: T;
383
+ };
384
+ declare const Object$1: <T extends KubernetesObject = KubernetesObject>(id: string, props: PropsInput<GenericObjectProps<T>>) => Effect.Effect<ObjectResource<T>, never, Providers>;
385
+ //#endregion
386
+ //#region src/yaml.d.ts
387
+ interface ConfigGroupProps extends LifecycleOptions {
388
+ objects?: KubernetesObject[];
389
+ yaml?: string | string[];
390
+ files?: string[];
391
+ defaultNamespace?: string;
392
+ }
393
+ interface ConfigGroupResult {
394
+ resources: ObjectResource[];
395
+ objects: KubernetesObject[];
396
+ }
397
+ declare const parseKubernetesYaml: (source: string) => KubernetesObject[];
398
+ declare const normalizeConfigGroupObjects: (props: Omit<ConfigGroupProps, keyof LifecycleOptions>) => KubernetesObject[];
399
+ declare const ConfigGroup: (id: string, props: PropsInput<ConfigGroupProps>) => Effect.Effect<ConfigGroupResult, never, Providers>;
400
+ //#endregion
401
+ //#region src/helm.d.ts
402
+ interface HelmChartProps extends LifecycleOptions {
403
+ chart: string;
404
+ releaseName?: string;
405
+ namespace?: string;
406
+ repository?: string;
407
+ version?: string;
408
+ values?: Record<string, unknown>;
409
+ includeCrds?: boolean;
410
+ kubeVersion?: string;
411
+ apiVersions?: string[];
412
+ }
413
+ declare const helmTemplateArgs: (id: string, props: Omit<HelmChartProps, keyof LifecycleOptions>) => string[];
414
+ declare const renderHelmChart: (id: string, props: Omit<HelmChartProps, keyof LifecycleOptions>) => string;
415
+ declare const HelmChart: (id: string, props: PropsInput<HelmChartProps>) => ReturnType<typeof ConfigGroup>;
416
+ //#endregion
417
+ //#region src/readiness.d.ts
418
+ interface ReadinessResult {
419
+ ready: boolean;
420
+ terminal: boolean;
421
+ detail: string;
422
+ }
423
+ declare const jsonPathValue: (object: KubernetesObject, expression: string) => unknown;
424
+ declare const kubernetesObjectReadiness: (object: KubernetesObject, waitFor?: WaitFor) => ReadinessResult;
425
+ declare class KubernetesReadinessError extends Error {
426
+ readonly ref: ObjectRef;
427
+ readonly timedOut: boolean;
428
+ readonly name = "KubernetesReadinessError";
429
+ constructor(message: string, ref: ObjectRef, timedOut: boolean);
430
+ }
431
+ //#endregion
432
+ //#region src/client.d.ts
433
+ declare class KubernetesApiError extends Error {
434
+ readonly method: string;
435
+ readonly path: string;
436
+ readonly statusCode: number;
437
+ readonly name = "KubernetesApiError";
438
+ readonly immutable: boolean;
439
+ constructor(method: string, path: string, statusCode: number, responseBody: string);
440
+ }
441
+ declare const connectCluster: (cluster: import("alchemy/Kubernetes").ClusterLike) => Effect.Effect<{
442
+ connection: import("alchemy/Kubernetes").Connection;
443
+ transport: ClusterTransport;
444
+ }, Error, never>;
445
+ declare const requestJson: (args_0: {
446
+ transport: ClusterTransport;
447
+ method: "GET" | "PATCH" | "DELETE";
448
+ path: string;
449
+ body?: unknown;
450
+ timeoutMs?: number;
451
+ contentType?: string;
452
+ }) => Effect.Effect<unknown, Error | KubernetesApiError, never>;
453
+ interface KindSpec {
454
+ plural: string;
455
+ namespaced: boolean;
456
+ }
457
+ declare const resolveKind: (args_0: {
458
+ transport: ClusterTransport;
459
+ ref: Pick<ObjectRef, "apiVersion" | "kind">;
460
+ }) => Effect.Effect<KindSpec, Error | KubernetesApiError, never>;
461
+ declare const objectPath: (args_0: {
462
+ transport: ClusterTransport;
463
+ ref: ObjectRef;
464
+ collection?: boolean;
465
+ }) => Effect.Effect<string, Error | KubernetesApiError, never>;
466
+ declare const readObject: (args_0: {
467
+ transport: ClusterTransport;
468
+ ref: ObjectRef;
469
+ }) => Effect.Effect<KubernetesObject, Error | KubernetesApiError, never>;
470
+ declare const applyObject: (args_0: {
471
+ transport: ClusterTransport;
472
+ object: KubernetesObject;
473
+ fieldManager: string;
474
+ forceConflicts: boolean;
475
+ dryRun?: boolean;
476
+ }) => Effect.Effect<KubernetesObject, Error | KubernetesApiError, never>;
477
+ declare const deleteObject: (args_0: {
478
+ transport: ClusterTransport;
479
+ ref: ObjectRef;
480
+ uid?: string;
481
+ propagationPolicy: DeletionPropagation;
482
+ }) => Effect.Effect<unknown, Error | KubernetesApiError, never>;
483
+ declare const watchObject: (args_0: {
484
+ transport: ClusterTransport;
485
+ ref: ObjectRef;
486
+ resourceVersion?: string;
487
+ timeoutSeconds: number;
488
+ accept: (object: KubernetesObject | undefined) => boolean;
489
+ }) => Effect.Effect<boolean, Error | KubernetesApiError, never>;
490
+ //#endregion
491
+ export { type BuiltinConstructor, type BuiltinProps, ConfigGroup, type ConfigGroupProps, type ConfigGroupResult, type DeletionPropagation, type DesiredObject, FQN_ANNOTATION, HelmChart, type HelmChartProps, INSTANCE_ANNOTATION, KubernetesApiError, type KubernetesObject, KubernetesReadinessError, type LifecycleOptions, Object$1 as Object, type ObjectAttributes, type ObjectDependencyBinding, type ObjectResource as ObjectInstance, type ObjectMetadata, type ObjectProps, ObjectProvider, type ObjectRef, ObjectResource$1 as ObjectResource, Providers, type WaitFor, api, apiextensions, applyObject, apps, autoscaling, batch, connectCluster, core, deleteObject, desiredObject, desiredProjection, helmTemplateArgs, jsonPathValue, kubernetesObjectReadiness, networking, normalizeConfigGroupObjects, objectPath, parseKubernetesYaml, policy, providers, rbac, readObject, renderHelmChart, requestJson, resolveKind, sanitizeObservedObject, storage, watchObject };