@cloudflare/config 0.21.0 → 0.23.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.
package/dist/index.d.mts CHANGED
@@ -1,4 +1,4 @@
1
- import { $ as Settings, A as TextBinding, B as WorkerBinding, C as QueueBinding, D as SecretsStoreSecretBinding, E as SecretBinding, F as UnsafeBinding, G as ContainerDefinition, H as WorkflowBinding, I as VectorizeBinding, J as defineConfig, K as WorkerDefinition, L as VersionMetadataBinding, M as TypedKvBinding, N as TypedPipelineBinding, O as SendEmailBinding, P as TypedQueueBinding, Q as ContainerConfig, R as VpcNetworkBinding, S as PipelineBinding, St as exports, T as RateLimitBinding, U as bindings, V as WorkerLoaderBinding, W as ConfigContext, X as defineWorker, Y as defineContainer, Z as CloudflareConfig, _ as JsonBinding, _t as Exports, a as AnalyticsEngineDatasetBinding, at as ScheduledTrigger, b as MediaBinding, bt as WorkflowExport, c as BindingDevOptions, ct as InferDurableNamespaces, d as D1Binding, dt as UnwrapConfig, et as WorkerConfig, f as DispatchNamespaceBinding, ft as DurableObjectCreatedExport, g as ImagesBinding, gt as DurableObjectTransferredExport, h as HyperdriveBinding, ht as DurableObjectRenamedExport, i as AiSearchNamespaceBinding, it as QueueConsumerTrigger, j as TypedAiBinding, k as StreamBinding, l as Bindings, lt as InferEnv, m as FlagshipBinding, mt as DurableObjectExpectingTransferExport, n as AiBinding, nt as EmailTrigger, o as ArtifactsBinding, ot as Triggers, p as DurableObjectBinding, pt as DurableObjectDeletedExport, q as WorkerReference, r as AiSearchBinding, rt as FetchTrigger, s as AssetsBinding, st as triggers, t as AgentMemoryBinding, tt as ConnectTrigger, u as BrowserBinding, ut as InferMainModule, v as KvBinding, vt as WorkerEntrypointExport, w as R2Binding, x as MtlsCertificateBinding, xt as WorkflowExportOptions, y as LogfwdrBinding, yt as WorkerEntrypointExportOptions, z as VpcServiceBinding } from "./public-u2AoxvhN.mjs";
1
+ import { $ as defineConfig, A as RateLimitBinding, B as UnsafeBinding, C as KvBinding, Ct as WorkerEntrypointExport, D as PipelineBinding, Dt as exports, E as MtlsCertificateBinding, Et as WorkflowExportOptions, F as TextBinding, G as WorkerBinding, H as VersionMetadataBinding, I as TypedAiBinding, J as bindings, K as WorkerLoaderBinding, L as TypedKvBinding, M as SecretsStoreSecretBinding, N as SendEmailBinding, O as QueueBinding, P as StreamBinding, Q as WorkerReference, R as TypedPipelineBinding, S as K2Record, St as Exports, T as MediaBinding, Tt as WorkflowExport, U as VpcNetworkBinding, V as VectorizeBinding, W as VpcServiceBinding, X as ContainerDefinition, Y as ConfigContext, Z as WorkerDefinition, _ as ImagesBinding, _t as DurableObjectCreatedExport, a as AnalyticsEngineDatasetBinding, at as WorkerConfig, b as K2ProduceResult, bt as DurableObjectRenamedExport, c as AssetsBinding, ct as FetchTrigger, d as BrowserBinding, dt as Triggers, et as defineContainer, f as D1Binding, ft as triggers, g as HyperdriveBinding, gt as UnwrapConfig, h as FlagshipBinding, ht as InferMainModule, i as AiSearchNamespaceBinding, it as Settings, j as SecretBinding, k as R2Binding, l as BindingDevOptions, lt as QueueConsumerTrigger, m as DurableObjectBinding, mt as InferEnv, n as AiBinding, nt as CloudflareConfig, o as AnalyticsSQLBinding, ot as ConnectTrigger, p as DispatchNamespaceBinding, pt as InferDurableNamespaces, q as WorkflowBinding, r as AiSearchBinding, rt as ContainerConfig, s as ArtifactsBinding, st as EmailTrigger, t as AgentMemoryBinding, tt as defineWorker, u as Bindings, ut as ScheduledTrigger, v as JsonBinding, vt as DurableObjectDeletedExport, w as LogfwdrBinding, wt as WorkerEntrypointExportOptions, x as K2Producer, xt as DurableObjectTransferredExport, y as K2Binding, yt as DurableObjectExpectingTransferExport, z as TypedQueueBinding } from "./public-Cf9CrRAi.mjs";
2
2
  import * as z from "zod";
3
3
  import { RawConfig } from "@cloudflare/workers-utils";
4
4
 
@@ -23,6 +23,12 @@ declare const BrowserBindingSchema: z.ZodObject<{
23
23
  remote: z.ZodOptional<z.ZodBoolean>;
24
24
  }, z.core.$strict>>;
25
25
  }, z.core.$strict>;
26
+ declare const AnalyticsSQLBindingSchema: z.ZodObject<{
27
+ type: z.ZodLiteral<"analytics">;
28
+ dev: z.ZodOptional<z.ZodObject<{
29
+ remote: z.ZodOptional<z.ZodBoolean>;
30
+ }, z.core.$strict>>;
31
+ }, z.core.$strict>;
26
32
  declare const WorkerBindingSchema: z.ZodObject<{
27
33
  type: z.ZodLiteral<"worker">;
28
34
  worker: z.ZodString;
@@ -130,6 +136,11 @@ declare const KnownBindingSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
130
136
  dev: z.ZodOptional<z.ZodObject<{
131
137
  remote: z.ZodOptional<z.ZodBoolean>;
132
138
  }, z.core.$strict>>;
139
+ }, z.core.$strict>, z.ZodObject<{
140
+ type: z.ZodLiteral<"analytics">;
141
+ dev: z.ZodOptional<z.ZodObject<{
142
+ remote: z.ZodOptional<z.ZodBoolean>;
143
+ }, z.core.$strict>>;
133
144
  }, z.core.$strict>, z.ZodObject<{
134
145
  type: z.ZodLiteral<"d1">;
135
146
  name: z.ZodOptional<z.ZodString>;
@@ -197,6 +208,12 @@ declare const KnownBindingSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
197
208
  dev: z.ZodOptional<z.ZodObject<{
198
209
  remote: z.ZodOptional<z.ZodBoolean>;
199
210
  }, z.core.$strict>>;
211
+ }, z.core.$strict>, z.ZodObject<{
212
+ type: z.ZodLiteral<"k2">;
213
+ stream: z.ZodString;
214
+ dev: z.ZodOptional<z.ZodObject<{
215
+ remote: z.ZodOptional<z.ZodBoolean>;
216
+ }, z.core.$strict>>;
200
217
  }, z.core.$strict>, z.ZodObject<{
201
218
  type: z.ZodLiteral<"queue">;
202
219
  name: z.ZodOptional<z.ZodString>;
@@ -387,6 +404,7 @@ declare const InputContainerSchema: z.ZodUnion<readonly [z.ZodObject<{
387
404
  jurisdiction: z.ZodOptional<z.ZodEnum<{
388
405
  eu: "eu";
389
406
  fedramp: "fedramp";
407
+ us: "us";
390
408
  }>>;
391
409
  }, z.core.$strict>>;
392
410
  rollout: z.ZodOptional<z.ZodObject<{
@@ -492,6 +510,7 @@ declare const OutputContainerSchema: z.ZodUnion<readonly [z.ZodObject<{
492
510
  jurisdiction: z.ZodOptional<z.ZodEnum<{
493
511
  eu: "eu";
494
512
  fedramp: "fedramp";
513
+ us: "us";
495
514
  }>>;
496
515
  }, z.core.$strict>>;
497
516
  rollout: z.ZodOptional<z.ZodObject<{
@@ -1061,6 +1080,7 @@ declare const InputConfigSchema: z.ZodObject<{
1061
1080
  jurisdiction: z.ZodOptional<z.ZodEnum<{
1062
1081
  eu: "eu";
1063
1082
  fedramp: "fedramp";
1083
+ us: "us";
1064
1084
  }>>;
1065
1085
  }, z.core.$strict>>;
1066
1086
  rollout: z.ZodOptional<z.ZodObject<{
@@ -1458,4 +1478,4 @@ declare function loadAndParseConfig(configPath: string, ctx: ConfigContext): Pro
1458
1478
  /** Load and parse only account settings from the default export. */
1459
1479
  declare function loadAndParseConfigSettings(configPath: string, ctx: ConfigContext): Promise<LoadAndParseConfigSettingsResult>;
1460
1480
  //#endregion
1461
- export { AgentMemoryBinding, AiBinding, AiSearchBinding, AiSearchNamespaceBinding, AnalyticsEngineDatasetBinding, AnalyticsEngineDatasetBindingSchema, ArtifactsBinding, AssetsBinding, AssetsSchema, BindingDevOptions, BindingSchema, Bindings, BrowserBinding, BrowserBindingSchema, CloudflareConfig, ConfigContext, type ConfigParseResult, type ConfigSettingsParseResult, ConnectTrigger, ContainerConfig, ContainerDefinition, D1Binding, D1BindingSchema, DispatchNamespaceBinding, DurableObjectBinding, DurableObjectCreatedExport, DurableObjectCreatedExportSchema, DurableObjectDeletedExport, DurableObjectDeletedExportSchema, DurableObjectExpectingTransferExport, DurableObjectExpectingTransferExportSchema, DurableObjectRenamedExport, DurableObjectRenamedExportSchema, DurableObjectTransferredExport, DurableObjectTransferredExportSchema, EmailTrigger, ExportSchema, Exports, FetchTrigger, FlagshipBinding, FlagshipBindingSchema, HyperdriveBinding, HyperdriveBindingSchema, ImagesBinding, InferDurableNamespaces, InferEnv, InferMainModule, InputConfigSchema, InputContainerSchema, InputSettingsSchema, type InputWorkerConfig, InputWorkerSchema, JsonBinding, KVBindingSchema, KnownBindingSchema, KvBinding, type LoadAndParseConfigResult, type LoadAndParseConfigSettingsResult, type LoadConfigResult, LogfwdrBinding, MediaBinding, type ModuleType, ModuleTypeSchema, MtlsCertificateBinding, OutputContainerSchema, OutputRootConfigSchema, OutputWorkerSchema, type ParsedInputConfig, type ParsedInputContainerConfig, type ParsedInputSettingsConfig, type ParsedInputWorkerConfig, type ParsedOutputContainerConfig, type ParsedOutputRootConfig, type ParsedOutputWorkerConfig, PipelineBinding, QueueBinding, QueueBindingSchema, QueueConsumerTrigger, R2Binding, R2BindingSchema, RateLimitBinding, ScheduledTrigger, SecretBinding, SecretsStoreSecretBinding, SendEmailBinding, Settings, StreamBinding, TailConsumerSchema, TextBinding, Triggers, TypedAiBinding, TypedKvBinding, TypedPipelineBinding, TypedQueueBinding, UnsafeBinding, UnsafeBindingSchema, UnwrapConfig, VectorizeBinding, VersionMetadataBinding, VpcNetworkBinding, VpcServiceBinding, WorkerBinding, WorkerBindingSchema, WorkerConfig, WorkerDefinition, WorkerEntrypointExport, WorkerEntrypointExportOptions, WorkerEntrypointExportSchema, WorkerLoaderBinding, WorkerReference, WorkflowBinding, WorkflowBindingSchema, WorkflowExport, WorkflowExportOptions, WorkflowExportSchema, bindings, convertToWranglerConfig, defineConfig, defineContainer, defineWorker, exports, generateTypes, loadAndParseConfig, loadAndParseConfigSettings, loadConfig, registerConfigHooks, resolveAndParseConfig, resolveAndParseConfigSettings, triggers, validateSingletonBindings };
1481
+ export { AgentMemoryBinding, AiBinding, AiSearchBinding, AiSearchNamespaceBinding, AnalyticsEngineDatasetBinding, AnalyticsEngineDatasetBindingSchema, AnalyticsSQLBinding, AnalyticsSQLBindingSchema, ArtifactsBinding, AssetsBinding, AssetsSchema, BindingDevOptions, BindingSchema, Bindings, BrowserBinding, BrowserBindingSchema, CloudflareConfig, ConfigContext, type ConfigParseResult, type ConfigSettingsParseResult, ConnectTrigger, ContainerConfig, ContainerDefinition, D1Binding, D1BindingSchema, DispatchNamespaceBinding, DurableObjectBinding, DurableObjectCreatedExport, DurableObjectCreatedExportSchema, DurableObjectDeletedExport, DurableObjectDeletedExportSchema, DurableObjectExpectingTransferExport, DurableObjectExpectingTransferExportSchema, DurableObjectRenamedExport, DurableObjectRenamedExportSchema, DurableObjectTransferredExport, DurableObjectTransferredExportSchema, EmailTrigger, ExportSchema, Exports, FetchTrigger, FlagshipBinding, FlagshipBindingSchema, HyperdriveBinding, HyperdriveBindingSchema, ImagesBinding, InferDurableNamespaces, InferEnv, InferMainModule, InputConfigSchema, InputContainerSchema, InputSettingsSchema, type InputWorkerConfig, InputWorkerSchema, JsonBinding, K2Binding, K2ProduceResult, K2Producer, K2Record, KVBindingSchema, KnownBindingSchema, KvBinding, type LoadAndParseConfigResult, type LoadAndParseConfigSettingsResult, type LoadConfigResult, LogfwdrBinding, MediaBinding, type ModuleType, ModuleTypeSchema, MtlsCertificateBinding, OutputContainerSchema, OutputRootConfigSchema, OutputWorkerSchema, type ParsedInputConfig, type ParsedInputContainerConfig, type ParsedInputSettingsConfig, type ParsedInputWorkerConfig, type ParsedOutputContainerConfig, type ParsedOutputRootConfig, type ParsedOutputWorkerConfig, PipelineBinding, QueueBinding, QueueBindingSchema, QueueConsumerTrigger, R2Binding, R2BindingSchema, RateLimitBinding, ScheduledTrigger, SecretBinding, SecretsStoreSecretBinding, SendEmailBinding, Settings, StreamBinding, TailConsumerSchema, TextBinding, Triggers, TypedAiBinding, TypedKvBinding, TypedPipelineBinding, TypedQueueBinding, UnsafeBinding, UnsafeBindingSchema, UnwrapConfig, VectorizeBinding, VersionMetadataBinding, VpcNetworkBinding, VpcServiceBinding, WorkerBinding, WorkerBindingSchema, WorkerConfig, WorkerDefinition, WorkerEntrypointExport, WorkerEntrypointExportOptions, WorkerEntrypointExportSchema, WorkerLoaderBinding, WorkerReference, WorkflowBinding, WorkflowBindingSchema, WorkflowExport, WorkflowExportOptions, WorkflowExportSchema, bindings, convertToWranglerConfig, defineConfig, defineContainer, defineWorker, exports, generateTypes, loadAndParseConfig, loadAndParseConfigSettings, loadConfig, registerConfigHooks, resolveAndParseConfig, resolveAndParseConfigSettings, triggers, validateSingletonBindings };
package/dist/index.mjs CHANGED
@@ -1,4 +1,4 @@
1
- import { a as triggers, i as exports$1, n as defineContainer, o as bindings, r as defineWorker, t as defineConfig } from "./public-srUjWEOA.mjs";
1
+ import { a as triggers, i as exports$1, n as defineContainer, o as bindings, r as defineWorker, t as defineConfig } from "./public-D1wKrJ5f.mjs";
2
2
  import * as nodeModule from "node:module";
3
3
  import { createRequire } from "node:module";
4
4
  import * as z from "zod";
@@ -32,6 +32,10 @@ const BrowserBindingSchema = z.strictObject({
32
32
  type: z.literal("browser"),
33
33
  dev: RemoteBindingDevSchema.optional()
34
34
  });
35
+ const AnalyticsSQLBindingSchema = z.strictObject({
36
+ type: z.literal("analytics"),
37
+ dev: RemoteBindingDevSchema.optional()
38
+ });
35
39
  const WorkerBindingSchema = z.strictObject({
36
40
  type: z.literal("worker"),
37
41
  worker: z.string(),
@@ -113,6 +117,7 @@ const KnownBindingSchema = z.discriminatedUnion("type", [
113
117
  }),
114
118
  z.strictObject({ type: z.literal("assets") }),
115
119
  BrowserBindingSchema,
120
+ AnalyticsSQLBindingSchema,
116
121
  D1BindingSchema,
117
122
  z.strictObject({
118
123
  type: z.literal("dispatch-namespace"),
@@ -157,6 +162,11 @@ const KnownBindingSchema = z.discriminatedUnion("type", [
157
162
  name: z.string(),
158
163
  dev: RemoteBindingDevSchema.optional()
159
164
  }),
165
+ z.strictObject({
166
+ type: z.literal("k2"),
167
+ stream: z.string(),
168
+ dev: RemoteBindingDevSchema.optional()
169
+ }),
160
170
  QueueBindingSchema,
161
171
  z.strictObject({
162
172
  type: z.literal("rate-limit"),
@@ -244,6 +254,7 @@ const SINGLETON_BINDING_TYPES = new Set([
244
254
  "ai",
245
255
  "assets",
246
256
  "browser",
257
+ "analytics",
247
258
  "images",
248
259
  "media",
249
260
  "stream",
@@ -371,7 +382,11 @@ const StandardContainerBaseSchema = BaseContainerSchema.extend({
371
382
  "OC",
372
383
  "AFR"
373
384
  ])).optional(),
374
- jurisdiction: z.enum(["eu", "fedramp"]).optional()
385
+ jurisdiction: z.enum([
386
+ "eu",
387
+ "fedramp",
388
+ "us"
389
+ ]).optional()
375
390
  }).optional(),
376
391
  rollout: z.strictObject({
377
392
  kind: z.enum([
@@ -954,6 +969,7 @@ function convertBindingsAndAssets(config, result) {
954
969
  const mtlsCertificates = [];
955
970
  const hyperdrive = [];
956
971
  const pipelines = [];
972
+ const k2 = [];
957
973
  const flagship = [];
958
974
  const aiSearch = [];
959
975
  const aiSearchNamespaces = [];
@@ -1034,6 +1050,12 @@ function convertBindingsAndAssets(config, result) {
1034
1050
  remote: binding.dev?.remote
1035
1051
  });
1036
1052
  break;
1053
+ case "analytics":
1054
+ result.analytics = omitUndefined({
1055
+ binding: name,
1056
+ remote: binding.dev?.remote
1057
+ });
1058
+ break;
1037
1059
  case "d1":
1038
1060
  d1Databases.push(omitUndefined({
1039
1061
  binding: name,
@@ -1118,6 +1140,13 @@ function convertBindingsAndAssets(config, result) {
1118
1140
  remote: binding.dev?.remote
1119
1141
  }));
1120
1142
  break;
1143
+ case "k2":
1144
+ k2.push(omitUndefined({
1145
+ binding: name,
1146
+ stream: binding.stream,
1147
+ remote: binding.dev?.remote
1148
+ }));
1149
+ break;
1121
1150
  case "queue":
1122
1151
  queueProducers.push(omitUndefined({
1123
1152
  binding: name,
@@ -1230,6 +1259,7 @@ function convertBindingsAndAssets(config, result) {
1230
1259
  if (mtlsCertificates.length) result.mtls_certificates = mtlsCertificates;
1231
1260
  if (hyperdrive.length) result.hyperdrive = hyperdrive;
1232
1261
  if (pipelines.length) result.pipelines = pipelines;
1262
+ if (k2.length) result.k2 = k2;
1233
1263
  if (flagship.length) result.flagship = flagship;
1234
1264
  if (aiSearch.length) result.ai_search = aiSearch;
1235
1265
  if (aiSearchNamespaces.length) result.ai_search_namespaces = aiSearchNamespaces;
@@ -1752,4 +1782,4 @@ async function loadAndParseConfigSettings(configPath, ctx) {
1752
1782
  }
1753
1783
 
1754
1784
  //#endregion
1755
- export { AnalyticsEngineDatasetBindingSchema, AssetsSchema, BindingSchema, BrowserBindingSchema, D1BindingSchema, DurableObjectCreatedExportSchema, DurableObjectDeletedExportSchema, DurableObjectExpectingTransferExportSchema, DurableObjectRenamedExportSchema, DurableObjectTransferredExportSchema, ExportSchema, FlagshipBindingSchema, HyperdriveBindingSchema, InputConfigSchema, InputContainerSchema, InputSettingsSchema, InputWorkerSchema, KVBindingSchema, KnownBindingSchema, ModuleTypeSchema, OutputContainerSchema, OutputRootConfigSchema, OutputWorkerSchema, QueueBindingSchema, R2BindingSchema, TailConsumerSchema, UnsafeBindingSchema, WorkerBindingSchema, WorkerEntrypointExportSchema, WorkflowBindingSchema, WorkflowExportSchema, bindings, convertToWranglerConfig, defineConfig, defineContainer, defineWorker, exports$1 as exports, generateTypes, loadAndParseConfig, loadAndParseConfigSettings, loadConfig, registerConfigHooks, resolveAndParseConfig, resolveAndParseConfigSettings, triggers, validateSingletonBindings };
1785
+ export { AnalyticsEngineDatasetBindingSchema, AnalyticsSQLBindingSchema, AssetsSchema, BindingSchema, BrowserBindingSchema, D1BindingSchema, DurableObjectCreatedExportSchema, DurableObjectDeletedExportSchema, DurableObjectExpectingTransferExportSchema, DurableObjectRenamedExportSchema, DurableObjectTransferredExportSchema, ExportSchema, FlagshipBindingSchema, HyperdriveBindingSchema, InputConfigSchema, InputContainerSchema, InputSettingsSchema, InputWorkerSchema, KVBindingSchema, KnownBindingSchema, ModuleTypeSchema, OutputContainerSchema, OutputRootConfigSchema, OutputWorkerSchema, QueueBindingSchema, R2BindingSchema, TailConsumerSchema, UnsafeBindingSchema, WorkerBindingSchema, WorkerEntrypointExportSchema, WorkflowBindingSchema, WorkflowExportSchema, bindings, convertToWranglerConfig, defineConfig, defineContainer, defineWorker, exports$1 as exports, generateTypes, loadAndParseConfig, loadAndParseConfigSettings, loadConfig, registerConfigHooks, resolveAndParseConfig, resolveAndParseConfigSettings, triggers, validateSingletonBindings };
@@ -257,6 +257,7 @@ type ExtractInstance<T$1, TInstance> = T$1 extends Constructor<TInstance> ? Inst
257
257
  * widen the import to a wildcard or to the plain `*Binding` interfaces.
258
258
  */
259
259
  interface BindingTypeMap<TBinding> {
260
+ k2: K2Producer;
260
261
  ai: TBinding extends TypedAiBinding<infer T> ? Ai<T> : Ai;
261
262
  json: TBinding extends JsonBinding<infer T> ? T : never;
262
263
  kv: TBinding extends TypedKvBinding<infer T> ? KVNamespace<T> : KVNamespace;
@@ -267,6 +268,7 @@ interface BindingTypeMap<TBinding> {
267
268
  "ai-search": AiSearchInstance;
268
269
  "ai-search-namespace": AiSearchNamespace;
269
270
  "analytics-engine-dataset": AnalyticsEngineDataset;
271
+ analytics: AnalyticsSQLBinding;
270
272
  artifacts: Artifacts;
271
273
  assets: Fetcher;
272
274
  browser: BrowserRun;
@@ -340,6 +342,16 @@ type InferWorkerEntrypointExports<TUnwrappedConfig> = Exclude<keyof InferMainMod
340
342
  * Use this to normalize a config before passing it to other inference utilities.
341
343
  */
342
344
  type UnwrapConfig<TConfig> = TConfig extends ((...args: any[]) => infer TReturn) ? UnwrapConfig<TReturn> : TConfig extends Promise<infer TCompletion> ? UnwrapConfig<TCompletion> : TConfig;
345
+ /** Extract the authored binding map from each possible config branch. */
346
+ type ConfigEnv<TConfig> = TConfig extends {
347
+ env: infer TEnv extends Record<string, any>;
348
+ } ? TEnv : Record<never, never>;
349
+ /** Collect every property name from a union of object types. */
350
+ type KeysOfUnion<T$1> = T$1 extends unknown ? keyof T$1 : never;
351
+ /** Read a property distributively from every member of a union. */
352
+ type UnionProperty<T$1, K$1 extends PropertyKey> = T$1 extends unknown ? K$1 extends keyof T$1 ? T$1[K$1] : never : never;
353
+ /** Merge binding maps, making bindings absent from some branches optional. */
354
+ type MergeEnv<TEnv$1, TRequiredKey extends PropertyKey = keyof TEnv$1, TOptionalKey extends PropertyKey = Exclude<KeysOfUnion<TEnv$1>, TRequiredKey>> = { [K in TRequiredKey]: InferBindingType<UnionProperty<TEnv$1, K>> } & { [K in TOptionalKey]?: InferBindingType<UnionProperty<TEnv$1, K>> };
343
355
  /**
344
356
  * Infer the `Env` interface type from a Worker config.
345
357
  *
@@ -363,9 +375,7 @@ type UnwrapConfig<TConfig> = TConfig extends ((...args: any[]) => infer TReturn)
363
375
  * export type Env = InferEnv<WorkerConfig>;
364
376
  * ```
365
377
  */
366
- type InferEnv<TUnwrappedConfig> = TUnwrappedConfig extends {
367
- env: infer TEnv extends Record<string, any>;
368
- } ? { [K in keyof TEnv]: InferBindingType<TEnv[K]> } : never;
378
+ type InferEnv<TUnwrappedConfig> = MergeEnv<ConfigEnv<TUnwrappedConfig>>;
369
379
  /**
370
380
  * Infer the Durable Object namespace names from a Worker config's exports.
371
381
  * Returns a union of export names that declare a *live* Durable Object —
@@ -610,7 +620,7 @@ interface CloudflareConfig extends Settings {
610
620
  /**
611
621
  * Union of all binding definitions accepted in `env`.
612
622
  */
613
- type Binding = AgentMemoryBinding | AiBinding | AiSearchBinding | AiSearchNamespaceBinding | AnalyticsEngineDatasetBinding | ArtifactsBinding | AssetsBinding | BrowserBinding | D1Binding | DispatchNamespaceBinding | DurableObjectBinding | FlagshipBinding | HyperdriveBinding | ImagesBinding$1 | JsonBinding | KvBinding | LogfwdrBinding | MediaBinding$1 | MtlsCertificateBinding | PipelineBinding | QueueBinding | R2Binding | RateLimitBinding | SecretBinding | SecretsStoreSecretBinding | SendEmailBinding | StreamBinding$1 | TextBinding | UnsafeBinding | VectorizeBinding | VersionMetadataBinding | VpcNetworkBinding | VpcServiceBinding | WorkerBinding | WorkerLoaderBinding | WorkflowBinding;
623
+ type Binding = AgentMemoryBinding | AiBinding | AiSearchBinding | AiSearchNamespaceBinding | AnalyticsEngineDatasetBinding | AnalyticsSQLBinding$1 | ArtifactsBinding | AssetsBinding | BrowserBinding | D1Binding | DispatchNamespaceBinding | DurableObjectBinding | FlagshipBinding | HyperdriveBinding | ImagesBinding$1 | JsonBinding | K2Binding | KvBinding | LogfwdrBinding | MediaBinding$1 | MtlsCertificateBinding | PipelineBinding | QueueBinding | R2Binding | RateLimitBinding | SecretBinding | SecretsStoreSecretBinding | SendEmailBinding | StreamBinding$1 | TextBinding | UnsafeBinding | VectorizeBinding | VersionMetadataBinding | VpcNetworkBinding | VpcServiceBinding | WorkerBinding | WorkerLoaderBinding | WorkflowBinding;
614
624
  /**
615
625
  * Union of all trigger definitions accepted in `triggers`.
616
626
  */
@@ -745,7 +755,7 @@ interface StandardContainerConfig extends BaseContainerConfig {
745
755
  /** Limit Container placement to specific geographic regions. */
746
756
  regions?: Array<"ENAM" | "WNAM" | "EEUR" | "WEUR" | "APAC" | "SAM" | "ME" | "OC" | "AFR">;
747
757
  /** Restrict Containers to compliance boundaries. */
748
- jurisdiction?: "eu" | "fedramp";
758
+ jurisdiction?: "eu" | "fedramp" | "us";
749
759
  };
750
760
  rollout?: {
751
761
  /**
@@ -1259,6 +1269,14 @@ interface BrowserBindingOptions {
1259
1269
  interface BrowserBinding extends BrowserBindingOptions {
1260
1270
  type: "browser";
1261
1271
  }
1272
+ interface AnalyticsSQLBindingOptions {
1273
+ /** Options that only apply during local development. */
1274
+ dev?: BindingDevOptions;
1275
+ }
1276
+ /** An Analytics SQL binding. */
1277
+ interface AnalyticsSQLBinding$1 extends AnalyticsSQLBindingOptions {
1278
+ type: "analytics";
1279
+ }
1262
1280
  interface D1BindingOptions {
1263
1281
  /** The UUID of this D1 database (not required). */
1264
1282
  id?: string;
@@ -1422,6 +1440,42 @@ interface PipelineBindingOptions {
1422
1440
  /** Options that only apply during local development. */
1423
1441
  dev?: BindingDevOptions;
1424
1442
  }
1443
+ interface K2BindingOptions {
1444
+ /** The ID of the K2 stream. */
1445
+ stream: string;
1446
+ /** Always uses the real stream in development. Set remote to true to suppress the usage warning; false is unsupported. */
1447
+ dev?: BindingDevOptions;
1448
+ }
1449
+ /** A producer binding to a K2 stream created using the Dashboard or API. */
1450
+ interface K2Binding extends K2BindingOptions {
1451
+ type: "k2";
1452
+ }
1453
+ /** An opaque K2 record with optional application headers. */
1454
+ interface K2Record<T$1 extends ArrayBuffer | Uint8Array> {
1455
+ content: T$1;
1456
+ headers?: Record<string, string>;
1457
+ }
1458
+ /** A complete-batch append outcome. An unsuccessful append may have committed. */
1459
+ type K2ProduceResult = {
1460
+ success: true;
1461
+ } | {
1462
+ success: false;
1463
+ error: {
1464
+ code: number;
1465
+ message: string;
1466
+ retryable: boolean;
1467
+ };
1468
+ };
1469
+ /** The K2 producer RPC interface. Batches use one byte representation. */
1470
+ interface K2Producer {
1471
+ /**
1472
+ * Atomically appends a batch of opaque records to the stream.
1473
+ * @param records - A batch containing either all ArrayBuffers or all Uint8Arrays.
1474
+ * @returns The append outcome; retry only when explicitly marked retryable.
1475
+ * @throws RPC transport failures may reject with an unknown append outcome.
1476
+ */
1477
+ send(records: K2Record<ArrayBuffer>[] | K2Record<Uint8Array>[]): Promise<K2ProduceResult>;
1478
+ }
1425
1479
  /** Binding to a Cloudflare Pipeline. */
1426
1480
  interface PipelineBinding extends PipelineBindingOptions {
1427
1481
  type: "pipeline";
@@ -1712,6 +1766,8 @@ interface Bindings {
1712
1766
  * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#browser-rendering
1713
1767
  */
1714
1768
  browser(options?: BrowserBindingOptions): BrowserBinding;
1769
+ /** An Analytics SQL binding. */
1770
+ analyticsSQL(options?: AnalyticsSQLBindingOptions): AnalyticsSQLBinding$1;
1715
1771
  /**
1716
1772
  * Binding to a D1 database.
1717
1773
  *
@@ -1768,6 +1824,8 @@ interface Bindings {
1768
1824
  mtlsCertificate(options: MtlsCertificateBindingOptions): MtlsCertificateBinding;
1769
1825
  /** Binding to a Cloudflare Pipeline. */
1770
1826
  pipeline<TRecord extends PipelineRecord = PipelineRecord>(options: PipelineBindingOptions): TypedPipelineBinding<TRecord>;
1827
+ /** A producer binding to a K2 stream created using the Dashboard or API. */
1828
+ k2(options: K2BindingOptions): K2Binding;
1771
1829
  /**
1772
1830
  * Producer binding to a Cloudflare Queue.
1773
1831
  *
@@ -1841,4 +1899,4 @@ interface Bindings {
1841
1899
  }
1842
1900
  declare const bindings: Bindings;
1843
1901
  //#endregion
1844
- export { Settings as $, TextBinding as A, WorkerBinding as B, QueueBinding as C, SecretsStoreSecretBinding as D, SecretBinding as E, UnsafeBinding as F, ContainerDefinition as G, WorkflowBinding as H, VectorizeBinding as I, defineConfig as J, WorkerDefinition as K, VersionMetadataBinding as L, TypedKvBinding as M, TypedPipelineBinding as N, SendEmailBinding as O, TypedQueueBinding as P, ContainerConfig as Q, VpcNetworkBinding as R, PipelineBinding as S, exports as St, RateLimitBinding as T, bindings as U, WorkerLoaderBinding as V, ConfigContext as W, defineWorker as X, defineContainer as Y, CloudflareConfig as Z, JsonBinding as _, Exports as _t, AnalyticsEngineDatasetBinding as a, ScheduledTrigger as at, MediaBinding$1 as b, WorkflowExport as bt, BindingDevOptions as c, InferDurableNamespaces as ct, D1Binding as d, UnwrapConfig as dt, WorkerConfig as et, DispatchNamespaceBinding as f, DurableObjectCreatedExport as ft, ImagesBinding$1 as g, DurableObjectTransferredExport as gt, HyperdriveBinding as h, DurableObjectRenamedExport as ht, AiSearchNamespaceBinding as i, QueueConsumerTrigger as it, TypedAiBinding as j, StreamBinding$1 as k, Bindings as l, InferEnv as lt, FlagshipBinding as m, DurableObjectExpectingTransferExport as mt, AiBinding as n, EmailTrigger as nt, ArtifactsBinding as o, Triggers as ot, DurableObjectBinding as p, DurableObjectDeletedExport as pt, WorkerReference as q, AiSearchBinding as r, FetchTrigger as rt, AssetsBinding as s, triggers as st, AgentMemoryBinding as t, ConnectTrigger as tt, BrowserBinding as u, InferMainModule as ut, KvBinding as v, WorkerEntrypointExport as vt, R2Binding as w, MtlsCertificateBinding as x, WorkflowExportOptions as xt, LogfwdrBinding as y, WorkerEntrypointExportOptions as yt, VpcServiceBinding as z };
1902
+ export { defineConfig as $, RateLimitBinding as A, UnsafeBinding as B, KvBinding as C, WorkerEntrypointExport as Ct, PipelineBinding as D, exports as Dt, MtlsCertificateBinding as E, WorkflowExportOptions as Et, TextBinding as F, WorkerBinding as G, VersionMetadataBinding as H, TypedAiBinding as I, bindings as J, WorkerLoaderBinding as K, TypedKvBinding as L, SecretsStoreSecretBinding as M, SendEmailBinding as N, QueueBinding as O, StreamBinding$1 as P, WorkerReference as Q, TypedPipelineBinding as R, K2Record as S, Exports as St, MediaBinding$1 as T, WorkflowExport as Tt, VpcNetworkBinding as U, VectorizeBinding as V, VpcServiceBinding as W, ContainerDefinition as X, ConfigContext as Y, WorkerDefinition as Z, ImagesBinding$1 as _, DurableObjectCreatedExport as _t, AnalyticsEngineDatasetBinding as a, WorkerConfig as at, K2ProduceResult as b, DurableObjectRenamedExport as bt, AssetsBinding as c, FetchTrigger as ct, BrowserBinding as d, Triggers as dt, defineContainer as et, D1Binding as f, triggers as ft, HyperdriveBinding as g, UnwrapConfig as gt, FlagshipBinding as h, InferMainModule as ht, AiSearchNamespaceBinding as i, Settings as it, SecretBinding as j, R2Binding as k, BindingDevOptions as l, QueueConsumerTrigger as lt, DurableObjectBinding as m, InferEnv as mt, AiBinding as n, CloudflareConfig as nt, AnalyticsSQLBinding$1 as o, ConnectTrigger as ot, DispatchNamespaceBinding as p, InferDurableNamespaces as pt, WorkflowBinding as q, AiSearchBinding as r, ContainerConfig as rt, ArtifactsBinding as s, EmailTrigger as st, AgentMemoryBinding as t, defineWorker as tt, Bindings as u, ScheduledTrigger as ut, JsonBinding as v, DurableObjectDeletedExport as vt, LogfwdrBinding as w, WorkerEntrypointExportOptions as wt, K2Producer as x, DurableObjectTransferredExport as xt, K2Binding as y, DurableObjectExpectingTransferExport as yt, TypedQueueBinding as z };
@@ -77,6 +77,10 @@ const bindings = {
77
77
  type: "pipeline",
78
78
  ...options
79
79
  }),
80
+ k2: (options) => ({
81
+ type: "k2",
82
+ ...options
83
+ }),
80
84
  queue: (options) => ({
81
85
  type: "queue",
82
86
  ...options
@@ -111,6 +115,10 @@ const bindings = {
111
115
  ...options
112
116
  }),
113
117
  versionMetadata: () => ({ type: "version-metadata" }),
118
+ analyticsSQL: (options) => ({
119
+ type: "analytics",
120
+ ...options
121
+ }),
114
122
  vpcService: (options) => ({
115
123
  type: "vpc-service",
116
124
  ...options
package/dist/public.d.mts CHANGED
@@ -1,2 +1,2 @@
1
- import { $ as Settings, A as TextBinding, B as WorkerBinding, C as QueueBinding, D as SecretsStoreSecretBinding, E as SecretBinding, F as UnsafeBinding, G as ContainerDefinition, H as WorkflowBinding, I as VectorizeBinding, J as defineConfig, K as WorkerDefinition, L as VersionMetadataBinding, M as TypedKvBinding, N as TypedPipelineBinding, O as SendEmailBinding, P as TypedQueueBinding, Q as ContainerConfig, R as VpcNetworkBinding, S as PipelineBinding, St as exports, T as RateLimitBinding, U as bindings, V as WorkerLoaderBinding, W as ConfigContext, X as defineWorker, Y as defineContainer, Z as CloudflareConfig, _ as JsonBinding, _t as Exports, a as AnalyticsEngineDatasetBinding, at as ScheduledTrigger, b as MediaBinding, bt as WorkflowExport, c as BindingDevOptions, ct as InferDurableNamespaces, d as D1Binding, dt as UnwrapConfig, et as WorkerConfig, f as DispatchNamespaceBinding, ft as DurableObjectCreatedExport, g as ImagesBinding, gt as DurableObjectTransferredExport, h as HyperdriveBinding, ht as DurableObjectRenamedExport, i as AiSearchNamespaceBinding, it as QueueConsumerTrigger, j as TypedAiBinding, k as StreamBinding, l as Bindings, lt as InferEnv, m as FlagshipBinding, mt as DurableObjectExpectingTransferExport, n as AiBinding, nt as EmailTrigger, o as ArtifactsBinding, ot as Triggers, p as DurableObjectBinding, pt as DurableObjectDeletedExport, q as WorkerReference, r as AiSearchBinding, rt as FetchTrigger, s as AssetsBinding, st as triggers, t as AgentMemoryBinding, tt as ConnectTrigger, u as BrowserBinding, ut as InferMainModule, v as KvBinding, vt as WorkerEntrypointExport, w as R2Binding, x as MtlsCertificateBinding, xt as WorkflowExportOptions, y as LogfwdrBinding, yt as WorkerEntrypointExportOptions, z as VpcServiceBinding } from "./public-u2AoxvhN.mjs";
2
- export { AgentMemoryBinding, AiBinding, AiSearchBinding, AiSearchNamespaceBinding, AnalyticsEngineDatasetBinding, ArtifactsBinding, AssetsBinding, BindingDevOptions, Bindings, BrowserBinding, CloudflareConfig, ConfigContext, ConnectTrigger, ContainerConfig, ContainerDefinition, D1Binding, DispatchNamespaceBinding, DurableObjectBinding, DurableObjectCreatedExport, DurableObjectDeletedExport, DurableObjectExpectingTransferExport, DurableObjectRenamedExport, DurableObjectTransferredExport, EmailTrigger, Exports, FetchTrigger, FlagshipBinding, HyperdriveBinding, ImagesBinding, InferDurableNamespaces, InferEnv, InferMainModule, JsonBinding, KvBinding, LogfwdrBinding, MediaBinding, MtlsCertificateBinding, PipelineBinding, QueueBinding, QueueConsumerTrigger, R2Binding, RateLimitBinding, ScheduledTrigger, SecretBinding, SecretsStoreSecretBinding, SendEmailBinding, Settings, StreamBinding, TextBinding, Triggers, TypedAiBinding, TypedKvBinding, TypedPipelineBinding, TypedQueueBinding, UnsafeBinding, UnwrapConfig, VectorizeBinding, VersionMetadataBinding, VpcNetworkBinding, VpcServiceBinding, WorkerBinding, WorkerConfig, WorkerDefinition, WorkerEntrypointExport, WorkerEntrypointExportOptions, WorkerLoaderBinding, WorkerReference, WorkflowBinding, WorkflowExport, WorkflowExportOptions, bindings, defineConfig, defineContainer, defineWorker, exports, triggers };
1
+ import { $ as defineConfig, A as RateLimitBinding, B as UnsafeBinding, C as KvBinding, Ct as WorkerEntrypointExport, D as PipelineBinding, Dt as exports, E as MtlsCertificateBinding, Et as WorkflowExportOptions, F as TextBinding, G as WorkerBinding, H as VersionMetadataBinding, I as TypedAiBinding, J as bindings, K as WorkerLoaderBinding, L as TypedKvBinding, M as SecretsStoreSecretBinding, N as SendEmailBinding, O as QueueBinding, P as StreamBinding, Q as WorkerReference, R as TypedPipelineBinding, S as K2Record, St as Exports, T as MediaBinding, Tt as WorkflowExport, U as VpcNetworkBinding, V as VectorizeBinding, W as VpcServiceBinding, X as ContainerDefinition, Y as ConfigContext, Z as WorkerDefinition, _ as ImagesBinding, _t as DurableObjectCreatedExport, a as AnalyticsEngineDatasetBinding, at as WorkerConfig, b as K2ProduceResult, bt as DurableObjectRenamedExport, c as AssetsBinding, ct as FetchTrigger, d as BrowserBinding, dt as Triggers, et as defineContainer, f as D1Binding, ft as triggers, g as HyperdriveBinding, gt as UnwrapConfig, h as FlagshipBinding, ht as InferMainModule, i as AiSearchNamespaceBinding, it as Settings, j as SecretBinding, k as R2Binding, l as BindingDevOptions, lt as QueueConsumerTrigger, m as DurableObjectBinding, mt as InferEnv, n as AiBinding, nt as CloudflareConfig, o as AnalyticsSQLBinding, ot as ConnectTrigger, p as DispatchNamespaceBinding, pt as InferDurableNamespaces, q as WorkflowBinding, r as AiSearchBinding, rt as ContainerConfig, s as ArtifactsBinding, st as EmailTrigger, t as AgentMemoryBinding, tt as defineWorker, u as Bindings, ut as ScheduledTrigger, v as JsonBinding, vt as DurableObjectDeletedExport, w as LogfwdrBinding, wt as WorkerEntrypointExportOptions, x as K2Producer, xt as DurableObjectTransferredExport, y as K2Binding, yt as DurableObjectExpectingTransferExport, z as TypedQueueBinding } from "./public-Cf9CrRAi.mjs";
2
+ export { AgentMemoryBinding, AiBinding, AiSearchBinding, AiSearchNamespaceBinding, AnalyticsEngineDatasetBinding, AnalyticsSQLBinding, ArtifactsBinding, AssetsBinding, BindingDevOptions, Bindings, BrowserBinding, CloudflareConfig, ConfigContext, ConnectTrigger, ContainerConfig, ContainerDefinition, D1Binding, DispatchNamespaceBinding, DurableObjectBinding, DurableObjectCreatedExport, DurableObjectDeletedExport, DurableObjectExpectingTransferExport, DurableObjectRenamedExport, DurableObjectTransferredExport, EmailTrigger, Exports, FetchTrigger, FlagshipBinding, HyperdriveBinding, ImagesBinding, InferDurableNamespaces, InferEnv, InferMainModule, JsonBinding, K2Binding, K2ProduceResult, K2Producer, K2Record, KvBinding, LogfwdrBinding, MediaBinding, MtlsCertificateBinding, PipelineBinding, QueueBinding, QueueConsumerTrigger, R2Binding, RateLimitBinding, ScheduledTrigger, SecretBinding, SecretsStoreSecretBinding, SendEmailBinding, Settings, StreamBinding, TextBinding, Triggers, TypedAiBinding, TypedKvBinding, TypedPipelineBinding, TypedQueueBinding, UnsafeBinding, UnwrapConfig, VectorizeBinding, VersionMetadataBinding, VpcNetworkBinding, VpcServiceBinding, WorkerBinding, WorkerConfig, WorkerDefinition, WorkerEntrypointExport, WorkerEntrypointExportOptions, WorkerLoaderBinding, WorkerReference, WorkflowBinding, WorkflowExport, WorkflowExportOptions, bindings, defineConfig, defineContainer, defineWorker, exports, triggers };
package/dist/public.mjs CHANGED
@@ -1,3 +1,3 @@
1
- import { a as triggers, i as exports, n as defineContainer, o as bindings, r as defineWorker, t as defineConfig } from "./public-srUjWEOA.mjs";
1
+ import { a as triggers, i as exports, n as defineContainer, o as bindings, r as defineWorker, t as defineConfig } from "./public-D1wKrJ5f.mjs";
2
2
 
3
3
  export { bindings, defineConfig, defineContainer, defineWorker, exports, triggers };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cloudflare/config",
3
- "version": "0.21.0",
3
+ "version": "0.23.0",
4
4
  "description": "Definitions and utilities for configuring Cloudflare Workers and related products. This is not yet stable enough for external use — APIs may change without notice.",
5
5
  "homepage": "https://github.com/cloudflare/workers-sdk/tree/main/packages/config#readme",
6
6
  "bugs": {
@@ -31,13 +31,13 @@
31
31
  "zod": "4.4.3"
32
32
  },
33
33
  "devDependencies": {
34
- "@cloudflare/workers-types": "^5.20260926.1",
34
+ "@cloudflare/workers-types": "^5.20261001.1",
35
35
  "ts-dedent": "^2.2.0",
36
36
  "tsdown": "0.16.3",
37
37
  "typescript": "5.8.3",
38
38
  "vitest": "4.1.0",
39
39
  "@cloudflare/workers-tsconfig": "0.0.0",
40
- "@cloudflare/workers-utils": "0.44.0"
40
+ "@cloudflare/workers-utils": "0.46.0"
41
41
  },
42
42
  "workers-sdk": {
43
43
  "prerelease": true