wrangler 4.136.3 → 4.137.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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "wrangler",
3
- "version": "4.136.3",
3
+ "version": "4.137.0",
4
4
  "description": "Command-line interface for all things Cloudflare Workers",
5
5
  "keywords": [
6
6
  "assembly",
@@ -161,21 +161,21 @@
161
161
  "yaml": "^2.8.1",
162
162
  "yargs": "^17.7.2",
163
163
  "zod": "4.4.3",
164
- "@cloudflare/autoconfig": "0.6.2",
165
164
  "@cloudflare/build-output-utils": "0.7.1",
165
+ "@cloudflare/autoconfig": "0.6.2",
166
166
  "@cloudflare/cli-shared-helpers": "0.1.36",
167
- "@cloudflare/deploy-helpers": "0.14.2",
168
- "@cloudflare/containers-shared": "0.19.1",
169
167
  "@cloudflare/config": "0.17.0",
168
+ "@cloudflare/containers-shared": "0.19.1",
169
+ "@cloudflare/deploy-helpers": "0.15.0",
170
170
  "@cloudflare/pages-functions": "0.1.0",
171
+ "@cloudflare/remote-bindings": "0.0.32",
171
172
  "@cloudflare/pages-shared": "^0.13.186",
172
- "@cloudflare/remote-bindings": "0.0.31",
173
- "@cloudflare/runtime-types": "0.0.31",
174
- "@cloudflare/shared-ast-primitives": "1.1.0",
175
173
  "@cloudflare/workers-auth": "0.9.0",
174
+ "@cloudflare/shared-ast-primitives": "1.1.0",
175
+ "@cloudflare/runtime-types": "0.1.0",
176
176
  "@cloudflare/workers-shared": "0.19.9",
177
- "@cloudflare/workers-tsconfig": "0.0.0",
178
177
  "@cloudflare/workflows-shared": "0.14.0",
178
+ "@cloudflare/workers-tsconfig": "0.0.0",
179
179
  "@cloudflare/workers-utils": "0.41.1"
180
180
  },
181
181
  "peerDependencies": {
@@ -43784,7 +43784,7 @@ var require_snapshot_utils = __commonJS({
43784
43784
  var require_snapshot_recorder = __commonJS({
43785
43785
  "../../node_modules/.pnpm/undici@7.29.0/node_modules/undici/lib/mock/snapshot-recorder.js"(exports$1, module2) {
43786
43786
  init_import_meta_url();
43787
- var { writeFile: writeFile18, readFile: readFile24, mkdir: mkdir9 } = __require("fs/promises");
43787
+ var { writeFile: writeFile18, readFile: readFile24, mkdir: mkdir10 } = __require("fs/promises");
43788
43788
  var { dirname: dirname28, resolve: resolve35 } = __require("path");
43789
43789
  var { setTimeout: setTimeout9, clearTimeout: clearTimeout2 } = __require("timers");
43790
43790
  var { InvalidArgumentError, UndiciError } = require_errors();
@@ -44023,7 +44023,7 @@ var require_snapshot_recorder = __commonJS({
44023
44023
  throw new InvalidArgumentError("Snapshot path is required");
44024
44024
  }
44025
44025
  const resolvedPath2 = resolve35(path107);
44026
- await mkdir9(dirname28(resolvedPath2), { recursive: true });
44026
+ await mkdir10(dirname28(resolvedPath2), { recursive: true });
44027
44027
  const data = Array.from(this.#snapshots.entries()).map(([hash2, snapshot]) => ({
44028
44028
  hash: hash2,
44029
44029
  snapshot
@@ -58235,7 +58235,7 @@ var require_update_check = __commonJS({
58235
58235
  var { tmpdir: tmpdir2 } = __require("os");
58236
58236
  var registryUrl = require_registry_url();
58237
58237
  var writeFile18 = promisify9(fs38.writeFile);
58238
- var mkdir9 = promisify9(fs38.mkdir);
58238
+ var mkdir10 = promisify9(fs38.mkdir);
58239
58239
  var readFile24 = promisify9(fs38.readFile);
58240
58240
  var compareVersions = /* @__PURE__ */ __name((a8, b11) => a8.localeCompare(b11, "en-US", { numeric: true }), "compareVersions");
58241
58241
  var encode5 = /* @__PURE__ */ __name((value) => encodeURIComponent(value).replace(/^%40/, "@"), "encode");
@@ -58243,7 +58243,7 @@ var require_update_check = __commonJS({
58243
58243
  const rootDir2 = tmpdir2();
58244
58244
  const subDir = join48(rootDir2, "update-check");
58245
58245
  if (!fs38.existsSync(subDir)) {
58246
- await mkdir9(subDir);
58246
+ await mkdir10(subDir);
58247
58247
  }
58248
58248
  let name2 = `${details.name}-${distTag}.json`;
58249
58249
  if (details.scope) {
@@ -62157,7 +62157,6 @@ var init_esm2 = __esm({
62157
62157
  // ../deploy-helpers/src/shared/context.ts
62158
62158
  function initDeployHelpersContext(ctx) {
62159
62159
  logger = ctx.logger;
62160
- createCloudflareClient = ctx.createCloudflareClient;
62161
62160
  fetchResult = ctx.fetchResult;
62162
62161
  fetchListResult = ctx.fetchListResult;
62163
62162
  fetchPagedListResult = ctx.fetchPagedListResult;
@@ -62166,7 +62165,7 @@ function initDeployHelpersContext(ctx) {
62166
62165
  prompt = ctx.prompt;
62167
62166
  select = ctx.select;
62168
62167
  }
62169
- var logger, createCloudflareClient, fetchResult, fetchListResult, fetchPagedListResult, confirm, prompt, select;
62168
+ var logger, fetchResult, fetchListResult, fetchPagedListResult, confirm, prompt, select;
62170
62169
  var init_context = __esm({
62171
62170
  "../deploy-helpers/src/shared/context.ts"() {
62172
62171
  init_import_meta_url();
@@ -62179,7 +62178,7 @@ var name, version2;
62179
62178
  var init_package = __esm({
62180
62179
  "package.json"() {
62181
62180
  name = "wrangler";
62182
- version2 = "4.136.3";
62181
+ version2 = "4.137.0";
62183
62182
  }
62184
62183
  });
62185
62184
 
@@ -134848,7 +134847,7 @@ async function logResponse(response) {
134848
134847
  logger2.debugWithSanitization("RESPONSE:", jsonText);
134849
134848
  logger2.debug("-- END CF API RESPONSE");
134850
134849
  }
134851
- function createCloudflareClient2(complianceConfig) {
134850
+ function createCloudflareClient(complianceConfig) {
134852
134851
  return new cloudflare_default({
134853
134852
  fetch: /* @__PURE__ */ __name(async (url4, init4) => {
134854
134853
  const request4 = new import_undici4.Request(url4, { ...init4, duplex: "half" });
@@ -135023,7 +135022,7 @@ var init_internal = __esm({
135023
135022
  init_user3();
135024
135023
  __name(logRequest, "logRequest");
135025
135024
  __name(logResponse, "logResponse");
135026
- __name(createCloudflareClient2, "createCloudflareClient");
135025
+ __name(createCloudflareClient, "createCloudflareClient");
135027
135026
  __name(performApiFetch, "performApiFetch");
135028
135027
  __name(fetchInternal, "fetchInternal");
135029
135028
  __name(cloneHeaders2, "cloneHeaders");
@@ -135170,7 +135169,6 @@ var init_cfetch2 = __esm({
135170
135169
  function initApiDeployHelpersContext() {
135171
135170
  initDeployHelpersContext({
135172
135171
  logger: logger2,
135173
- createCloudflareClient: createCloudflareClient2,
135174
135172
  fetchResult: fetchResult2,
135175
135173
  fetchListResult: fetchListResult2,
135176
135174
  fetchPagedListResult: fetchPagedListResult2,
@@ -135185,7 +135183,6 @@ var init_deploy_helpers_context = __esm({
135185
135183
  init_import_meta_url();
135186
135184
  init_context();
135187
135185
  init_cfetch2();
135188
- init_internal();
135189
135186
  init_dialogs();
135190
135187
  init_logger2();
135191
135188
  __name(initApiDeployHelpersContext, "initApiDeployHelpersContext");
@@ -159412,9 +159409,13 @@ async function getWorkersDevSubdomainIfAccessible(complianceConfig, accountId, o
159412
159409
  return "unauthorizedError" in result ? void 0 : result.subdomain;
159413
159410
  }
159414
159411
  async function getWorkerSubdomain(complianceConfig, accountId, workerName) {
159415
- const worker = await createCloudflareClient(
159416
- complianceConfig
159417
- ).workers.beta.workers.get(workerName, { account_id: accountId });
159412
+ const worker = await retryOnAPIFailure(
159413
+ () => fetchResult(
159414
+ complianceConfig,
159415
+ `/accounts/${accountId}/workers/workers/${workerName}`
159416
+ ),
159417
+ logger
159418
+ );
159418
159419
  return {
159419
159420
  ...worker.subdomain,
159420
159421
  enabled: worker.subdomain.enabled ?? false,
@@ -179892,7 +179893,7 @@ var init_dist14 = __esm({
179892
179893
  init_wrapper();
179893
179894
  init_create_worker_upload_form();
179894
179895
  import_undici13 = __toESM(require_undici(), 1);
179895
- version3 = "0.0.31";
179896
+ version3 = "0.0.32";
179896
179897
  NoDefaultValueProvided2 = class extends UserError {
179897
179898
  static {
179898
179899
  __name(this, "NoDefaultValueProvided");
@@ -180457,10 +180458,6 @@ function convertToolingConfig(parsed) {
180457
180458
  local_protocol: parsed.dev.localProtocol,
180458
180459
  upstream_protocol: parsed.dev.upstreamProtocol,
180459
180460
  host: parsed.dev.host,
180460
- // `dev.types` is intentionally NOT mapped — it is consumed
180461
- // separately via the `types` field on `LoadNewConfigResult`, not
180462
- // threaded through `RawConfig`. The legacy `config.dev.generate_types`
180463
- // gate is not used when `--experimental-new-config` is on.
180464
180461
  enable_containers: parsed.dev.enableContainers,
180465
180462
  container_engine: parsed.dev.containerEngine
180466
180463
  };
@@ -180481,7 +180478,7 @@ var init_convert = __esm({
180481
180478
  });
180482
180479
 
180483
180480
  // src/experimental-config/schema.ts
180484
- var RuleSchema, BuildSchema, PythonModulesSchema, DevSchema, WranglerConfigSchema, WRANGLER_CONFIG_SUPPORTED_KEYS, WORKER_CONFIG_FIELD_HINTS;
180481
+ var RuleSchema, BuildSchema, PythonModulesSchema, TypesSchema, DevSchema, WranglerConfigSchema, WRANGLER_CONFIG_SUPPORTED_KEYS, WORKER_CONFIG_FIELD_HINTS;
180485
180482
  var init_schema2 = __esm({
180486
180483
  "src/experimental-config/schema.ts"() {
180487
180484
  init_import_meta_url();
@@ -180507,6 +180504,10 @@ var init_schema2 = __esm({
180507
180504
  PythonModulesSchema = strictObject({
180508
180505
  exclude: array(string2()).optional()
180509
180506
  });
180507
+ TypesSchema = strictObject({
180508
+ generate: boolean2().optional(),
180509
+ includeRuntime: boolean2().optional()
180510
+ });
180510
180511
  DevSchema = strictObject({
180511
180512
  ip: string2().optional(),
180512
180513
  port: number2().optional(),
@@ -180515,10 +180516,6 @@ var init_schema2 = __esm({
180515
180516
  localProtocol: _enum2(["http", "https"]).optional(),
180516
180517
  upstreamProtocol: _enum2(["http", "https"]).optional(),
180517
180518
  host: string2().optional(),
180518
- types: strictObject({
180519
- generate: boolean2().optional(),
180520
- includeRuntime: boolean2().optional()
180521
- }).optional(),
180522
180519
  enableContainers: boolean2().optional(),
180523
180520
  containerEngine: string2().optional()
180524
180521
  });
@@ -180542,6 +180539,7 @@ var init_schema2 = __esm({
180542
180539
  uploadSourceMaps: boolean2().optional(),
180543
180540
  build: BuildSchema.optional(),
180544
180541
  assetsDirectory: string2().optional(),
180542
+ types: TypesSchema.optional(),
180545
180543
  dev: DevSchema.optional(),
180546
180544
  sendMetrics: boolean2().optional()
180547
180545
  });
@@ -180648,8 +180646,8 @@ ${formatWranglerConfigZodError(parsed.error)}`,
180648
180646
  );
180649
180647
  const rawConfig = mergeRawConfigs(rawWorkerConfig, rawWranglerConfig);
180650
180648
  const types14 = {
180651
- generate: parsedWranglerConfig?.data.dev?.types?.generate ?? true,
180652
- includeRuntime: parsedWranglerConfig?.data.dev?.types?.includeRuntime ?? true
180649
+ generate: parsedWranglerConfig?.data.types?.generate ?? true,
180650
+ includeRuntime: parsedWranglerConfig?.data.types?.includeRuntime ?? true
180653
180651
  };
180654
180652
  const dependencies = new Set(configResult.dependencies);
180655
180653
  if (wranglerConfigResult) {
@@ -181586,6 +181584,7 @@ async function readNewConfig(args, options = {}) {
181586
181584
  return {
181587
181585
  config: config2,
181588
181586
  parsedConfig: loaded.parsedConfig,
181587
+ cloudflareConfigPath: loaded.cloudflareConfigPath,
181589
181588
  mode: loaded.mode,
181590
181589
  dependencies: loaded.dependencies,
181591
181590
  types: loaded.types
@@ -205572,17 +205571,16 @@ async function regenerateNewConfigTypes(options) {
205572
205571
  }
205573
205572
  let existing;
205574
205573
  try {
205575
- existing = await fs$1.readFile(DEFAULT_WORKERS_TYPES_FILE_PATH, "utf-8");
205574
+ existing = await fs$1.readFile(NEW_CONFIG_TYPES_OUTPUT_PATH, "utf-8");
205576
205575
  } catch {
205577
205576
  }
205578
205577
  let content;
205579
205578
  try {
205580
- const outputDir = path28__namespace.default.dirname(
205581
- path28__namespace.default.resolve(DEFAULT_WORKERS_TYPES_FILE_PATH)
205582
- );
205583
- const relativeConfigPath = "./" + path28__namespace.default.relative(outputDir, options.cloudflareConfigPath);
205579
+ const outputDir = path28__namespace.default.dirname(path28__namespace.default.resolve(NEW_CONFIG_TYPES_OUTPUT_PATH));
205580
+ const relativeConfigPath = path28__namespace.default.relative(outputDir, options.cloudflareConfigPath).replaceAll("\\", "/");
205581
+ const configImportPath = relativeConfigPath.startsWith(".") ? relativeConfigPath : `./${relativeConfigPath}`;
205584
205582
  content = generateTypes({
205585
- configPath: relativeConfigPath,
205583
+ configPath: configImportPath,
205586
205584
  packageName: "wrangler/experimental-config"
205587
205585
  });
205588
205586
  if (options.types.includeRuntime) {
@@ -205606,22 +205604,26 @@ ${runtimeTypes}`;
205606
205604
  return;
205607
205605
  }
205608
205606
  try {
205609
- await fs$1.writeFile(DEFAULT_WORKERS_TYPES_FILE_PATH, content);
205607
+ await fs$1.mkdir(path28__namespace.default.dirname(NEW_CONFIG_TYPES_OUTPUT_PATH), {
205608
+ recursive: true
205609
+ });
205610
+ await fs$1.writeFile(NEW_CONFIG_TYPES_OUTPUT_PATH, content);
205610
205611
  logger2.log(
205611
- `\u{1F4DD} Regenerated ${path28__namespace.default.relative(process.cwd(), DEFAULT_WORKERS_TYPES_FILE_NAME)} from ${path28__namespace.default.relative(process.cwd(), options.cloudflareConfigPath)}.`
205612
+ `\u{1F4DD} Regenerated ${NEW_CONFIG_TYPES_OUTPUT_PATH} from ${path28__namespace.default.relative(process.cwd(), options.cloudflareConfigPath)}.`
205612
205613
  );
205613
205614
  } catch (e11) {
205614
205615
  logger2.error(e11);
205615
205616
  }
205616
205617
  }
205618
+ var NEW_CONFIG_TYPES_OUTPUT_PATH;
205617
205619
  var init_new_config = __esm({
205618
205620
  "src/type-generation/new-config.ts"() {
205619
205621
  init_import_meta_url();
205620
205622
  init_dist3();
205621
205623
  init_src5();
205622
205624
  init_logger2();
205623
- init_helpers4();
205624
205625
  init_runtime2();
205626
+ NEW_CONFIG_TYPES_OUTPUT_PATH = ".cloudflare/types/index.d.ts";
205625
205627
  __name(regenerateNewConfigTypes, "regenerateNewConfigTypes");
205626
205628
  }
205627
205629
  });
@@ -206488,9 +206490,9 @@ var init_ConfigController = __esm({
206488
206490
  await this.#configWatcher?.close();
206489
206491
  this.#configWatcher = void 0;
206490
206492
  }
206491
- if (newConfig && fileConfig.configPath) {
206493
+ if (newConfig) {
206492
206494
  await regenerateNewConfigTypes({
206493
- cloudflareConfigPath: fileConfig.configPath,
206495
+ cloudflareConfigPath: newConfig.cloudflareConfigPath,
206494
206496
  workerConfig: newConfig.parsedConfig.worker,
206495
206497
  types: newConfig.types
206496
206498
  });
@@ -213062,10 +213064,13 @@ async function writeBuildOutput({
213062
213064
  env: env6,
213063
213065
  isPreview: isPreview2 = false
213064
213066
  }) {
213065
- const { config: config2, parsedConfig, mode } = await readNewConfig(
213066
- { env: env6 },
213067
- { isPreview: isPreview2 }
213068
- );
213067
+ const newConfig = await readNewConfig({ env: env6 }, { isPreview: isPreview2 });
213068
+ await regenerateNewConfigTypes({
213069
+ cloudflareConfigPath: newConfig.cloudflareConfigPath,
213070
+ workerConfig: newConfig.parsedConfig.worker,
213071
+ types: newConfig.types
213072
+ });
213073
+ const { config: config2, parsedConfig, mode } = newConfig;
213069
213074
  const { buildProps, assetsOptions } = await mergeBuildOutputProps(config2);
213070
213075
  const root = process.cwd();
213071
213076
  let buildResult;
@@ -213113,6 +213118,7 @@ var init_write_build_output = __esm({
213113
213118
  init_maybe_build_worker();
213114
213119
  init_merge_config_args();
213115
213120
  init_logger2();
213121
+ init_new_config();
213116
213122
  __name(writeBuildOutput, "writeBuildOutput");
213117
213123
  }
213118
213124
  });
@@ -229308,7 +229314,6 @@ function createHandler2(def, argv) {
229308
229314
  try {
229309
229315
  initDeployHelpersContext({
229310
229316
  logger: logger2,
229311
- createCloudflareClient: createCloudflareClient2,
229312
229317
  fetchResult: fetchResult2,
229313
229318
  fetchListResult: fetchListResult2,
229314
229319
  fetchPagedListResult: fetchPagedListResult2,
@@ -229318,7 +229323,7 @@ function createHandler2(def, argv) {
229318
229323
  select: select2
229319
229324
  });
229320
229325
  const result = await def.handler(args, {
229321
- sdk: createCloudflareClient2(config2),
229326
+ sdk: createCloudflareClient(config2),
229322
229327
  config: config2,
229323
229328
  errors: { UserError, FatalError },
229324
229329
  logger: logger2,
@@ -230094,103 +230099,102 @@ function normalizeSqlLineEndings(sql) {
230094
230099
  }
230095
230100
  function splitSqlIntoStatements(sql) {
230096
230101
  const statements = [];
230097
- let str = "";
230098
- const compoundStatementStack = [];
230099
- const iterator = sql[Symbol.iterator]();
230100
- let next = iterator.next();
230101
- while (!next.done) {
230102
- const char = next.value;
230103
- if (compoundStatementStack[0]?.(str + char)) {
230104
- compoundStatementStack.shift();
230105
- }
230106
- switch (char) {
230107
- case `'`:
230108
- case `"`:
230109
- case "`":
230110
- str += char + consumeUntilMarker(iterator, char);
230111
- break;
230112
- case `$`: {
230113
- const dollarQuote = "$" + consumeWhile(iterator, isDollarQuoteIdentifier);
230114
- str += dollarQuote;
230115
- if (dollarQuote.endsWith("$")) {
230116
- str += consumeUntilMarker(iterator, dollarQuote);
230117
- }
230118
- break;
230102
+ let start = 0;
230103
+ while (start < sql.length) {
230104
+ const { end, hasUsefulToken } = findCompleteStatementEnd(sql, start);
230105
+ if (end === void 0) {
230106
+ if (hasUsefulToken) {
230107
+ statements.push(sql.slice(start).trim());
230119
230108
  }
230120
- case `-`:
230121
- next = iterator.next();
230122
- if (!next.done && next.value === "-") {
230123
- consumeUntilMarker(iterator, "\n");
230124
- str += "\n";
230125
- break;
230126
- } else {
230127
- str += char;
230128
- continue;
230129
- }
230130
- case `/`:
230131
- next = iterator.next();
230132
- if (!next.done && next.value === "*") {
230133
- consumeUntilMarker(iterator, "*/");
230134
- break;
230135
- } else {
230136
- str += char;
230137
- continue;
230138
- }
230139
- case `;`:
230140
- if (compoundStatementStack.length === 0) {
230141
- statements.push(str);
230142
- str = "";
230143
- } else {
230144
- str += char;
230145
- }
230146
- break;
230147
- default:
230148
- str += char;
230149
- break;
230109
+ break;
230150
230110
  }
230151
- if (isCompoundStatementStart(str)) {
230152
- compoundStatementStack.unshift(isCompoundStatementEnd);
230111
+ const statement = sql.slice(start, end - 1).trim();
230112
+ if (hasUsefulToken && statement.length > 0) {
230113
+ statements.push(statement);
230153
230114
  }
230154
- next = iterator.next();
230115
+ start = end;
230155
230116
  }
230156
- statements.push(str);
230157
- return statements.map((statement) => statement.trim()).filter((statement) => statement.length > 0);
230117
+ return statements;
230158
230118
  }
230159
- function consumeWhile(iterator, predicate, window2 = 16) {
230160
- let next = iterator.next();
230161
- let str = "";
230162
- let tail = "";
230163
- while (!next.done) {
230164
- str += next.value;
230165
- tail = (tail + next.value).slice(-window2);
230166
- if (!predicate(tail)) {
230167
- break;
230168
- }
230169
- next = iterator.next();
230119
+ function findCompleteStatementEnd(sql, start) {
230120
+ let state3 = "INVALID";
230121
+ let hasUsefulToken = false;
230122
+ for (let index = start; index < sql.length; index++) {
230123
+ const char = sql[index];
230124
+ let token;
230125
+ if (char === ";") {
230126
+ token = "tkSEMI";
230127
+ } else if (char === " " || char === "\r" || char === " " || char === "\n" || char === "\f") {
230128
+ token = "tkWS";
230129
+ } else if (char === "/" && sql[index + 1] === "*") {
230130
+ const end = sql.indexOf("*/", index + 2);
230131
+ if (end === -1) {
230132
+ return { end: void 0, hasUsefulToken };
230133
+ }
230134
+ index = end + 1;
230135
+ token = "tkWS";
230136
+ } else if (char === "-" && sql[index + 1] === "-") {
230137
+ const end = sql.indexOf("\n", index + 2);
230138
+ if (end === -1) {
230139
+ return { end: void 0, hasUsefulToken };
230140
+ }
230141
+ index = end;
230142
+ token = "tkWS";
230143
+ } else if (char === "[") {
230144
+ const end = sql.indexOf("]", index + 1);
230145
+ if (end === -1) {
230146
+ return { end: void 0, hasUsefulToken: true };
230147
+ }
230148
+ index = end;
230149
+ token = "tkOTHER";
230150
+ } else if (char === "'" || char === '"' || char === "`") {
230151
+ const end = sql.indexOf(char, index + 1);
230152
+ if (end === -1) {
230153
+ return { end: void 0, hasUsefulToken: true };
230154
+ }
230155
+ index = end;
230156
+ token = "tkOTHER";
230157
+ } else if (isIdentifierChar(char)) {
230158
+ const identifierStart = index;
230159
+ while (index + 1 < sql.length && isIdentifierChar(sql[index + 1])) {
230160
+ index++;
230161
+ }
230162
+ token = classifyIdentifier(sql.slice(identifierStart, index + 1));
230163
+ } else {
230164
+ token = "tkOTHER";
230165
+ }
230166
+ hasUsefulToken ||= token !== "tkSEMI" && token !== "tkWS";
230167
+ state3 = getNextState(state3, token);
230168
+ if (state3 === "START") {
230169
+ return { end: index + 1, hasUsefulToken };
230170
+ }
230171
+ }
230172
+ return { end: void 0, hasUsefulToken };
230173
+ }
230174
+ function getNextState(state3, token) {
230175
+ return transitions[state3][token];
230176
+ }
230177
+ function isIdentifierChar(char) {
230178
+ return /[A-Za-z0-9_$\u0080-\uffff]/.test(char);
230179
+ }
230180
+ function classifyIdentifier(identifier) {
230181
+ switch (identifier.toLowerCase()) {
230182
+ case "explain":
230183
+ return "tkEXPLAIN";
230184
+ case "create":
230185
+ return "tkCREATE";
230186
+ case "temp":
230187
+ case "temporary":
230188
+ return "tkTEMP";
230189
+ case "trigger":
230190
+ return "tkTRIGGER";
230191
+ case "end":
230192
+ return "tkEND";
230193
+ default:
230194
+ return "tkOTHER";
230170
230195
  }
230171
- return str;
230172
- }
230173
- function consumeUntilMarker(iterator, endMarker) {
230174
- return consumeWhile(
230175
- iterator,
230176
- (str) => !str.endsWith(endMarker),
230177
- endMarker.length
230178
- );
230179
- }
230180
- function isDollarQuoteIdentifier(str) {
230181
- const lastChar = str.slice(-1);
230182
- return (
230183
- // The $ marks the end of the identifier
230184
- lastChar !== "$" && // we allow numbers, underscore and letters with diacritical marks
230185
- (/[0-9_]/i.test(lastChar) || lastChar.toLowerCase() !== lastChar.toUpperCase())
230186
- );
230187
- }
230188
- function isCompoundStatementStart(str) {
230189
- return /\s(BEGIN|CASE)\s$/i.test(str);
230190
- }
230191
- function isCompoundStatementEnd(str) {
230192
- return /\sEND[;\s]$/i.test(str);
230193
230196
  }
230197
+ var transitions;
230194
230198
  var init_splitter = __esm({
230195
230199
  "src/d1/splitter.ts"() {
230196
230200
  init_import_meta_url();
@@ -230199,11 +230203,92 @@ var init_splitter = __esm({
230199
230203
  __name(splitSqlQuery, "splitSqlQuery");
230200
230204
  __name(normalizeSqlLineEndings, "normalizeSqlLineEndings");
230201
230205
  __name(splitSqlIntoStatements, "splitSqlIntoStatements");
230202
- __name(consumeWhile, "consumeWhile");
230203
- __name(consumeUntilMarker, "consumeUntilMarker");
230204
- __name(isDollarQuoteIdentifier, "isDollarQuoteIdentifier");
230205
- __name(isCompoundStatementStart, "isCompoundStatementStart");
230206
- __name(isCompoundStatementEnd, "isCompoundStatementEnd");
230206
+ transitions = {
230207
+ INVALID: {
230208
+ tkSEMI: "START",
230209
+ tkWS: "INVALID",
230210
+ tkOTHER: "NORMAL",
230211
+ tkEXPLAIN: "EXPLAIN",
230212
+ tkCREATE: "CREATE",
230213
+ tkTEMP: "NORMAL",
230214
+ tkTRIGGER: "NORMAL",
230215
+ tkEND: "NORMAL"
230216
+ },
230217
+ START: {
230218
+ tkSEMI: "START",
230219
+ tkWS: "START",
230220
+ tkOTHER: "NORMAL",
230221
+ tkEXPLAIN: "EXPLAIN",
230222
+ tkCREATE: "CREATE",
230223
+ tkTEMP: "NORMAL",
230224
+ tkTRIGGER: "NORMAL",
230225
+ tkEND: "NORMAL"
230226
+ },
230227
+ NORMAL: {
230228
+ tkSEMI: "START",
230229
+ tkWS: "NORMAL",
230230
+ tkOTHER: "NORMAL",
230231
+ tkEXPLAIN: "NORMAL",
230232
+ tkCREATE: "NORMAL",
230233
+ tkTEMP: "NORMAL",
230234
+ tkTRIGGER: "NORMAL",
230235
+ tkEND: "NORMAL"
230236
+ },
230237
+ EXPLAIN: {
230238
+ tkSEMI: "START",
230239
+ tkWS: "EXPLAIN",
230240
+ tkOTHER: "EXPLAIN",
230241
+ tkEXPLAIN: "NORMAL",
230242
+ tkCREATE: "CREATE",
230243
+ tkTEMP: "NORMAL",
230244
+ tkTRIGGER: "NORMAL",
230245
+ tkEND: "NORMAL"
230246
+ },
230247
+ CREATE: {
230248
+ tkSEMI: "START",
230249
+ tkWS: "CREATE",
230250
+ tkOTHER: "NORMAL",
230251
+ tkEXPLAIN: "NORMAL",
230252
+ tkCREATE: "NORMAL",
230253
+ tkTEMP: "CREATE",
230254
+ tkTRIGGER: "TRIGGER",
230255
+ tkEND: "NORMAL"
230256
+ },
230257
+ TRIGGER: {
230258
+ tkSEMI: "SEMI",
230259
+ tkWS: "TRIGGER",
230260
+ tkOTHER: "TRIGGER",
230261
+ tkEXPLAIN: "TRIGGER",
230262
+ tkCREATE: "TRIGGER",
230263
+ tkTEMP: "TRIGGER",
230264
+ tkTRIGGER: "TRIGGER",
230265
+ tkEND: "TRIGGER"
230266
+ },
230267
+ SEMI: {
230268
+ tkSEMI: "SEMI",
230269
+ tkWS: "SEMI",
230270
+ tkOTHER: "TRIGGER",
230271
+ tkEXPLAIN: "TRIGGER",
230272
+ tkCREATE: "TRIGGER",
230273
+ tkTEMP: "TRIGGER",
230274
+ tkTRIGGER: "TRIGGER",
230275
+ tkEND: "END"
230276
+ },
230277
+ END: {
230278
+ tkSEMI: "START",
230279
+ tkWS: "END",
230280
+ tkOTHER: "TRIGGER",
230281
+ tkEXPLAIN: "TRIGGER",
230282
+ tkCREATE: "TRIGGER",
230283
+ tkTEMP: "TRIGGER",
230284
+ tkTRIGGER: "TRIGGER",
230285
+ tkEND: "TRIGGER"
230286
+ }
230287
+ };
230288
+ __name(findCompleteStatementEnd, "findCompleteStatementEnd");
230289
+ __name(getNextState, "getNextState");
230290
+ __name(isIdentifierChar, "isIdentifierChar");
230291
+ __name(classifyIdentifier, "classifyIdentifier");
230207
230292
  }
230208
230293
  });
230209
230294
  async function executeSql({
@@ -251523,7 +251608,7 @@ var require_lib5 = __commonJS({
251523
251608
  return isInAstralSet(code2, astralIdentifierStartCodes);
251524
251609
  }
251525
251610
  __name(isIdentifierStart, "isIdentifierStart");
251526
- function isIdentifierChar(code2) {
251611
+ function isIdentifierChar2(code2) {
251527
251612
  if (code2 < 48) return code2 === 36;
251528
251613
  if (code2 < 58) return true;
251529
251614
  if (code2 < 65) return false;
@@ -251535,7 +251620,7 @@ var require_lib5 = __commonJS({
251535
251620
  }
251536
251621
  return isInAstralSet(code2, astralIdentifierStartCodes) || isInAstralSet(code2, astralIdentifierCodes);
251537
251622
  }
251538
- __name(isIdentifierChar, "isIdentifierChar");
251623
+ __name(isIdentifierChar2, "isIdentifierChar");
251539
251624
  var reservedWords = {
251540
251625
  keyword: ["break", "case", "catch", "continue", "debugger", "default", "do", "else", "finally", "for", "function", "if", "return", "switch", "throw", "try", "var", "const", "while", "with", "new", "this", "super", "class", "extends", "export", "import", "null", "true", "false", "in", "instanceof", "typeof", "void", "delete"],
251541
251626
  strict: ["implements", "interface", "let", "package", "private", "protected", "public", "static", "yield"],
@@ -253254,7 +253339,7 @@ var require_lib5 = __commonJS({
253254
253339
  if (mods.includes(char)) {
253255
253340
  this.raise(Errors.DuplicateRegExpFlags, nextPos());
253256
253341
  }
253257
- } else if (isIdentifierChar(cp5) || cp5 === 92) {
253342
+ } else if (isIdentifierChar2(cp5) || cp5 === 92) {
253258
253343
  this.raise(Errors.MalformedRegExpFlags, nextPos());
253259
253344
  } else {
253260
253345
  break;
@@ -253442,13 +253527,13 @@ var require_lib5 = __commonJS({
253442
253527
  }
253443
253528
  while (this.state.pos < this.length) {
253444
253529
  const ch2 = this.codePointAtPos(this.state.pos);
253445
- if (isIdentifierChar(ch2)) {
253530
+ if (isIdentifierChar2(ch2)) {
253446
253531
  this.state.pos += ch2 <= 65535 ? 1 : 2;
253447
253532
  } else if (ch2 === 92) {
253448
253533
  this.state.containsEsc = true;
253449
253534
  word += this.input.slice(chunkStart, this.state.pos);
253450
253535
  const escStart = this.state.curPosition();
253451
- const identifierCheck = this.state.pos === start ? isIdentifierStart : isIdentifierChar;
253536
+ const identifierCheck = this.state.pos === start ? isIdentifierStart : isIdentifierChar2;
253452
253537
  if (this.input.charCodeAt(++this.state.pos) !== 117) {
253453
253538
  this.raise(Errors.MissingUnicodeEscape, this.state.curPosition());
253454
253539
  chunkStart = this.state.pos - 1;
@@ -253806,7 +253891,7 @@ var require_lib5 = __commonJS({
253806
253891
  const nameEnd = nameStart + name2.length;
253807
253892
  if (this.input.slice(nameStart, nameEnd) === name2) {
253808
253893
  const nextCh = this.input.charCodeAt(nameEnd);
253809
- return !(isIdentifierChar(nextCh) || (nextCh & 64512) === 55296);
253894
+ return !(isIdentifierChar2(nextCh) || (nextCh & 64512) === 55296);
253810
253895
  }
253811
253896
  return false;
253812
253897
  }
@@ -256877,7 +256962,7 @@ var require_lib5 = __commonJS({
256877
256962
  const start = this.state.pos;
256878
256963
  do {
256879
256964
  ch2 = this.input.charCodeAt(++this.state.pos);
256880
- } while (isIdentifierChar(ch2) || ch2 === 45);
256965
+ } while (isIdentifierChar2(ch2) || ch2 === 45);
256881
256966
  this.finishToken(141, this.input.slice(start, this.state.pos));
256882
256967
  }
256883
256968
  jsxParseIdentifier() {
@@ -262469,7 +262554,7 @@ var require_lib5 = __commonJS({
262469
262554
  keywordRelationalOperator.lastIndex = pos;
262470
262555
  if (keywordRelationalOperator.test(this.input)) {
262471
262556
  const endCh = this.codePointAtPos(keywordRelationalOperator.lastIndex);
262472
- if (!isIdentifierChar(endCh) && endCh !== 92) {
262557
+ if (!isIdentifierChar2(endCh) && endCh !== 92) {
262473
262558
  return false;
262474
262559
  }
262475
262560
  }
@@ -299326,7 +299411,6 @@ async function runPagesToWorkersDeploy(delegation) {
299326
299411
  await run(experimentalFlags, async () => {
299327
299412
  initDeployHelpersContext({
299328
299413
  logger: logger2,
299329
- createCloudflareClient: createCloudflareClient2,
299330
299414
  fetchResult: fetchResult2,
299331
299415
  fetchListResult: fetchListResult2,
299332
299416
  fetchPagedListResult: fetchPagedListResult2,
@@ -299360,7 +299444,6 @@ var init_run_workers_deploy = __esm({
299360
299444
  init_import_meta_url();
299361
299445
  init_context();
299362
299446
  init_cfetch2();
299363
- init_internal();
299364
299447
  init_config6();
299365
299448
  init_deploy3();
299366
299449
  init_dialogs();
@@ -362614,7 +362697,6 @@ var init_DevEnv = __esm({
362614
362697
  init_context();
362615
362698
  init_src();
362616
362699
  init_cfetch2();
362617
- init_internal();
362618
362700
  init_build_failures();
362619
362701
  init_dialogs();
362620
362702
  init_logger2();
@@ -362634,7 +362716,6 @@ var init_DevEnv = __esm({
362634
362716
  async startWorker(options) {
362635
362717
  initDeployHelpersContext({
362636
362718
  logger: logger2,
362637
- createCloudflareClient: createCloudflareClient2,
362638
362719
  fetchResult: fetchResult2,
362639
362720
  fetchListResult: fetchListResult2,
362640
362721
  fetchPagedListResult: fetchPagedListResult2,
@@ -363094,15 +363175,14 @@ var init_LocalRuntimeController = __esm({
363094
363175
  const nextState = {
363095
363176
  dockerPath: data.config.dev.dockerPath ?? getDockerPath(),
363096
363177
  complianceRegion: data.config.complianceRegion,
363178
+ hasContainers: Boolean(
363179
+ data.config.dev.enableContainers && data.config.containerDevPlan !== void 0
363180
+ ),
363097
363181
  containerOptions: data.config.dev.enableContainers ? data.config.containerDevPlan?.containerOptions ?? [] : []
363098
363182
  };
363099
- if (util.isDeepStrictEqual(previousState, nextState) || nextState.containerOptions.length === 0) {
363183
+ if (util.isDeepStrictEqual(previousState, nextState) || !nextState.hasContainers) {
363100
363184
  return nextState;
363101
363185
  }
363102
- assert38__default.default(
363103
- data.config.dev.containerBuildId,
363104
- "Build ID should be set when Container images require preparation"
363105
- );
363106
363186
  this.dockerPath = nextState.dockerPath;
363107
363187
  for (const { image_tag } of nextState.containerOptions) {
363108
363188
  this.containerImageTagsSeen.add(image_tag);
@@ -1818,6 +1818,18 @@ interface WranglerConfig {
1818
1818
  * `runWorkerFirst`) live in `cloudflare.config.ts` under `worker.assets`.
1819
1819
  */
1820
1820
  assetsDirectory?: string;
1821
+ /**
1822
+ * Type-generation settings used by Wrangler dev and build. Defaults to
1823
+ * `{ generate: true, includeRuntime: true }`.
1824
+ *
1825
+ * - `generate`: emit `.cloudflare/types/index.d.ts`.
1826
+ * - `includeRuntime`: append the Workers runtime types generated from the
1827
+ * project's compatibility date and flags.
1828
+ */
1829
+ types?: {
1830
+ generate?: boolean;
1831
+ includeRuntime?: boolean;
1832
+ };
1821
1833
  dev?: {
1822
1834
  ip?: string;
1823
1835
  port?: number;
@@ -1826,20 +1838,6 @@ interface WranglerConfig {
1826
1838
  localProtocol?: "http" | "https";
1827
1839
  upstreamProtocol?: "http" | "https";
1828
1840
  host?: string;
1829
- /**
1830
- * Type-generation settings. Consumed directly by the new-config
1831
- * type-generation path (`regenerateNewConfigTypes`) — NOT threaded
1832
- * through the merged `RawConfig`. Default:
1833
- * `{ generate: true, includeRuntime: true }`.
1834
- *
1835
- * - `generate`: emit `worker-configuration.d.ts`.
1836
- * - `includeRuntime`: append the Workers runtime types (generated from
1837
- * the project's compatibility date/flags).
1838
- */
1839
- types?: {
1840
- generate?: boolean;
1841
- includeRuntime?: boolean;
1842
- };
1843
1841
  /**
1844
1842
  * Container-related dev settings. `containers` itself is currently not
1845
1843
  * supported under `--experimental-new-config`, but these dev-time settings are
@@ -1 +1 @@
1
- {"version":3,"file":"experimental-config.d.mts","names":["Pipeline","PipelineRecord","DurableObjectStorageOptions","TContainer","ContainerDefinition","DurableObjectCreatedExportOptions","DurableObjectDeletedExportOptions","DurableObjectRenamedExportOptions","DurableObjectTransferredExportOptions","DurableObjectExpectingTransferExportOptions","DurableObjectCreatedExport","DurableObjectDeletedExport","DurableObjectRenamedExport","DurableObjectTransferredExport","DurableObjectExpectingTransferExport","DurableObjectExportOptions","DurableObjectExports","WorkerEntrypointExportOptions","WorkerEntrypointExport","Exports","exports","WorkerModule","Record","DefaultModule","ExportedHandler","Rpc","WorkerEntrypointBranded","Constructor","DurableObjectBranded","WorkflowEntrypointBranded","TInstance","ExtractInstance","T$1","InstanceType","BindingTypeMap","TBinding","TypedAiBinding","T","Ai","JsonBinding","TypedKvBinding","KVNamespace","TypedPipelineBinding","TypedQueueBinding","Queue","TextBinding","AgentMemoryNamespace","AiSearchInstance","AiSearchNamespace","AnalyticsEngineDataset","Artifacts","Fetcher","BrowserRun","D1Database","DispatchNamespace","DurableObjectNamespace","Flagship","Hyperdrive","ImagesBinding","MediaBinding","RateLimit","R2Bucket","SecretsStoreSecret","SendEmail","StreamBinding","VectorizeIndex","WorkerVersionMetadata","WorkerLoader","Workflow","SelectedWorkerExportName","TExportName","InferBindingType","WorkerReference","TWorker","UnwrapConfig","InferMainModule","TModule","TWorkflow","P","K","InferExportsByType","TUnwrappedConfig","TExportType","TExports","InferWorkerEntrypointExports","Exclude","TConfig","TReturn","Promise","TCompletion","InferEnv","TEnv","InferDurableNamespaces","FetchTriggerOptions","FetchTrigger","QueueConsumerTriggerOptions","QueueConsumerTrigger","ScheduledTriggerOptions","ScheduledTrigger","EmailTriggerOptions","EmailTrigger","ConnectTriggerOptions","ConnectTrigger","Triggers","triggers","Settings","CloudflareConfig","WorkerConfig","ConfigInput","ContainerConfig","Binding","AgentMemoryBinding","AiBinding","AiSearchBinding","AiSearchNamespaceBinding","AnalyticsEngineDatasetBinding","ArtifactsBinding","AssetsBinding","BrowserBinding","D1Binding","DispatchNamespaceBinding","DurableObjectBinding","FlagshipBinding","HyperdriveBinding","ImagesBinding$1","KvBinding","LogfwdrBinding","MediaBinding$1","MtlsCertificateBinding","PipelineBinding","QueueBinding","R2Binding","RateLimitBinding","SecretBinding","SecretsStoreSecretBinding","SendEmailBinding","StreamBinding$1","UnsafeBinding","VectorizeBinding","VersionMetadataBinding","VpcNetworkBinding","VpcServiceBinding","WorkerBinding","WorkerLoaderBinding","Trigger","Export","ContainerImage","ContainerObservabilityConfig","StandardContainerObservabilityConfig","BaseContainerConfig","StandardContainerConfig","Array","DurableObjectContainerConfig","ConfigContext","WorkerDefinition","defineConfig","TInput","defineContainer","defineWorker","Json","BindingDevOptions","AgentMemoryBindingOptions","AiBindingOptions","TAiModelList","AiModelListType","AiModels","AiSearchBindingOptions","AiSearchNamespaceBindingOptions","AnalyticsEngineDatasetBindingOptions","ArtifactsBindingOptions","BrowserBindingOptions","D1BindingOptions","DispatchNamespaceBindingOptions","ReferencedWorkerConfig","TWorker$1","DurableObjectExportName","WorkerEntrypointExportName","WorkflowExportName","DurableObjectBindingOptions","TExportName$1","FlagshipBindingOptions","HyperdriveBindingOptions","ImagesBindingOptions","KvBindingOptions","TKey","LogfwdrBindingOptions","MediaBindingOptions","MtlsCertificateBindingOptions","PipelineBindingOptions","TRecord","QueueBindingOptions","TBody","R2BindingOptions","RateLimitBindingOptions","SecretsStoreSecretBindingOptions","SendEmailDestinationOptions","SendEmailBindingOptions","StreamBindingOptions","UnsafeBindingOptions","VectorizeBindingOptions","VpcNetworkBindingOptions","VpcServiceBindingOptions","WorkerBindingOptions","WorkflowBindingOptions","WorkflowBinding","Bindings","NoInfer","bindings","$","A","B","C","D","E","F","G","H","I","J","L","M","N","O","Q","R","S","U","V","W","X","Y","Z","_","_t","a","at","b","bt","c","ct","d","dt","et","f","ft","g","gt","h","ht","i","it","j","k","l","lt","m","mt","n","nt","o","ot","p","pt","q","r","rt","s","st","t","tt","u","ut","v","vt","w","x","y","yt","z"],"sources":["../../config/dist/public-fVh2BrM5.d.mts","../src/experimental-config/types.ts","../src/experimental-config/wrangler-definition.ts"],"sourcesContent":["import { Pipeline, PipelineRecord } from \"cloudflare:pipelines\";\n\n//#region src/exports.d.ts\n\n/**\n * Storage backend for the Durable Object.\n *\n * Containers are only supported on the SQLite storage engine, so `container` is\n * only offered alongside `storage: \"sqlite\"`.\n */\ntype DurableObjectStorageOptions<TContainer extends ContainerDefinition | undefined = ContainerDefinition | undefined> = {\n /**\n * Selects the SQLite-backed storage engine (recommended for new\n * classes).\n */\n storage: \"sqlite\";\n /**\n * Attach a Container application to this Durable Object by config reference.\n */\n container?: TContainer;\n} | {\n /** Selects the legacy key-value storage engine. */\n storage: \"legacy-kv\";\n};\n/**\n * Declares a provisioned Durable Object class exported from this Worker.\n *\n * For more information about Durable Objects, see the documentation at\n * https://developers.cloudflare.com/workers/learning/using-durable-objects\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#durable-objects\n */\ntype DurableObjectCreatedExportOptions<TContainer extends ContainerDefinition | undefined = ContainerDefinition | undefined> = {\n state?: \"created\";\n} & DurableObjectStorageOptions<TContainer>;\n/**\n * Retire a provisioned Durable Object namespace whose class has\n * been removed from code.\n *\n * During deploy, the class must not be exported in the uploaded code, and no\n * other Worker may hold a `durableObject` binding to the namespace.\n */\ninterface DurableObjectDeletedExportOptions {\n state: \"deleted\";\n}\n/**\n * Rename a provisioned Durable Object namespace's class. The\n * `renamedTo` value must also appear as a live (`state: \"created\"`)\n * `durableObject` entry in the same `exports` map.\n */\ninterface DurableObjectRenamedExportOptions {\n state: \"renamed\";\n /**\n * The destination class name. Must be a valid JavaScript identifier and\n * must appear as a live (`state: \"created\"`) `durableObject` entry in the\n * same `exports` map.\n */\n renamedTo: string;\n}\n/**\n * Transfer ownership of a Durable Object namespace to another Worker in the same account.\n * The target Worker must first deploy an `expectingTransfer` entry naming this Worker via `transferFrom`.\n */\ninterface DurableObjectTransferredExportOptions {\n state: \"transferred\";\n /**\n * The destination Worker. Must reference a Worker in the same account.\n */\n transferredTo: string;\n}\n/**\n * Prepare to receive cross-Worker Durable Object transfer.\n * Once the source Worker's `transferred` export is deployed, this entry becomes a normal live `durable-object` export.\n */\ntype DurableObjectExpectingTransferExportOptions<TContainer extends ContainerDefinition | undefined = ContainerDefinition | undefined> = {\n state: \"expecting-transfer\";\n /**\n * The source Worker for the two-phase cross-Worker transfer.\n */\n transferFrom: string;\n} & DurableObjectStorageOptions<TContainer>;\ntype DurableObjectCreatedExport<TContainer extends ContainerDefinition | undefined = ContainerDefinition | undefined> = DurableObjectCreatedExportOptions<TContainer> & {\n type: \"durable-object\";\n};\ninterface DurableObjectDeletedExport extends DurableObjectDeletedExportOptions {\n type: \"durable-object\";\n}\ninterface DurableObjectRenamedExport extends DurableObjectRenamedExportOptions {\n type: \"durable-object\";\n}\ninterface DurableObjectTransferredExport extends DurableObjectTransferredExportOptions {\n type: \"durable-object\";\n}\ntype DurableObjectExpectingTransferExport<TContainer extends ContainerDefinition | undefined = ContainerDefinition | undefined> = DurableObjectExpectingTransferExportOptions<TContainer> & {\n type: \"durable-object\";\n};\ntype DurableObjectExportOptions = DurableObjectCreatedExportOptions | DurableObjectDeletedExportOptions | DurableObjectRenamedExportOptions | DurableObjectTransferredExportOptions | DurableObjectExpectingTransferExportOptions;\ntype DurableObjectExports = DurableObjectCreatedExport | DurableObjectDeletedExport | DurableObjectRenamedExport | DurableObjectTransferredExport | DurableObjectExpectingTransferExport;\ninterface WorkerEntrypointExportOptions {\n cache?: {\n /** Whether cache is enabled for this entrypoint. */\n enabled: boolean;\n };\n}\ninterface WorkerEntrypointExport extends WorkerEntrypointExportOptions {\n type: \"worker\";\n}\n/**\n * Configuration for named exports declared by the Worker. Each entry's\n * key is the exported class name; the value configures the export.\n */\ninterface Exports {\n /**\n * Declares a Durable Object class defined by this Worker.\n *\n * For more information about Durable Objects, see the documentation at\n * https://developers.cloudflare.com/workers/learning/using-durable-objects\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#durable-objects\n */\n durableObject<TContainer extends ContainerDefinition | undefined = undefined>(options: DurableObjectCreatedExportOptions<TContainer>): DurableObjectCreatedExport<TContainer>;\n /**\n * Retire a provisioned Durable Object namespace whose class has been removed from code.\n */\n durableObject(options: DurableObjectDeletedExportOptions): DurableObjectDeletedExport;\n /**\n * Rename a provisioned Durable Object namespace's class.\n */\n durableObject(options: DurableObjectRenamedExportOptions): DurableObjectRenamedExport;\n /**\n * Transfer ownership of a Durable Object namespace to another Worker in the same account.\n */\n durableObject(options: DurableObjectTransferredExportOptions): DurableObjectTransferredExport;\n /**\n * Prepare to receive cross-Worker Durable Object transfer.\n * The source Worker must follow up with a deployment containing a `transferred` export to commit the transfer.\n */\n durableObject<TContainer extends ContainerDefinition | undefined = undefined>(options: DurableObjectExpectingTransferExportOptions<TContainer>): DurableObjectExpectingTransferExport<TContainer>;\n durableObject(options: DurableObjectExportOptions): DurableObjectExports;\n /** Declares a WorkerEntrypoint export defined by this Worker. */\n worker(options?: WorkerEntrypointExportOptions): WorkerEntrypointExport;\n}\n/**\n * Exports builder for configuring Worker exports.\n *\n * @example\n * ```typescript\n * import { defineConfig, defineContainer, defineWorker, exports } from \"@cloudflare/config\";\n *\n * const myContainer = defineContainer({\n * name: \"my-container\",\n * image: { dockerfile: \"./Dockerfile\" },\n * });\n *\n * const worker = defineWorker({\n * exports: {\n * MyDurableObject: exports.durableObject({ storage: \"sqlite\" }),\n * MyContainerDO: exports.durableObject({ storage: \"sqlite\", container: myContainer }),\n * OldClass: exports.durableObject({ state: \"deleted\" }),\n * OldName: exports.durableObject({ state: \"renamed\", renamedTo: \"NewName\" }),\n * Outgoing: exports.durableObject({ state: \"transferred\", transferredTo: \"target-worker\" }),\n * Incoming: exports.durableObject({ state: \"expecting-transfer\", storage: \"sqlite\", transferFrom: \"source-worker\" }),\n * },\n * });\n *\n * export default defineConfig({ worker, containers: [myContainer] });\n * ```\n */\ndeclare const exports: Exports;\n//#endregion\n//#region src/inference.d.ts\n/**\n * The Worker's entry module, imported with the `{ type: \"cf-worker\" }` import attribute\n * @example\n * ```ts\n * import * as entrypoint from \"./src\" with { type: \"cf-worker\" };\n * ```\n */\ntype WorkerModule = Record<string, any>;\n/**\n * Default module type representing an unknown Worker's exports.\n * - default export can be `ExportedHandler` or a `WorkerEntrypoint` class constructor\n * - named exports can be `WorkerEntrypoint`, `DurableObject`, or `WorkflowEntrypoint` class constructors\n */\ninterface DefaultModule {\n default?: ExportedHandler | Constructor<Rpc.WorkerEntrypointBranded>;\n [key: string]: ExportedHandler | Constructor<Rpc.WorkerEntrypointBranded> | Constructor<Rpc.DurableObjectBranded> | Constructor<Rpc.WorkflowEntrypointBranded> | undefined;\n}\n/**\n * Represents a class constructor that creates instances of TInstance.\n */\ntype Constructor<TInstance> = new (...args: any[]) => TInstance;\n/**\n * Extracts the instance type from a class constructor if it extends `TInstance`.\n */\ntype ExtractInstance<T$1, TInstance> = T$1 extends Constructor<TInstance> ? InstanceType<T$1> : never;\n/**\n * Mapping from binding type literals to Cloudflare runtime types.\n *\n * Entries fall into two groups:\n * - Parameterized bindings (ai, json, kv, pipeline, queue, text) refine their\n * runtime type from the binding instance via nominal matches against the\n * `Typed*Binding` / `JsonBinding` / `TextBinding` interfaces from\n * `./bindings`. When `TBinding` does not match, the entry falls back to the\n * unparameterized runtime type.\n * - Non-parameterized bindings map their type literal directly to a runtime\n * type and ignore `TBinding`.\n *\n * IMPORTANT: The right-hand-side identifiers in this map (e.g. `KVNamespace`,\n * `ImagesBinding`, `Fetcher`) must resolve to the ambient runtime types from\n * `@cloudflare/workers-types`, not to local config interfaces. Several local\n * binding interfaces in `./bindings.ts` (`ImagesBinding`, `MediaBinding`,\n * `StreamBinding`) share names with ambient globals — importing those local\n * types into this file silently shadows the globals and breaks `InferEnv`.\n * Only import the `Typed*Binding`, `JsonBinding`, and `TextBinding` interfaces\n * from `./bindings` (their names do not collide with ambient globals); never\n * widen the import to a wildcard or to the plain `*Binding` interfaces.\n */\ninterface BindingTypeMap<TBinding> {\n ai: TBinding extends TypedAiBinding<infer T> ? Ai<T> : Ai;\n json: TBinding extends JsonBinding<infer T> ? T : never;\n kv: TBinding extends TypedKvBinding<infer T> ? KVNamespace<T> : KVNamespace;\n pipeline: TBinding extends TypedPipelineBinding<infer T> ? Pipeline<T> : Pipeline;\n queue: TBinding extends TypedQueueBinding<infer T> ? Queue<T> : Queue;\n text: TBinding extends TextBinding<infer T> ? T : never;\n \"agent-memory\": AgentMemoryNamespace;\n \"ai-search\": AiSearchInstance;\n \"ai-search-namespace\": AiSearchNamespace;\n \"analytics-engine-dataset\": AnalyticsEngineDataset;\n artifacts: Artifacts;\n assets: Fetcher;\n browser: BrowserRun;\n d1: D1Database;\n \"dispatch-namespace\": DispatchNamespace;\n \"durable-object\": DurableObjectNamespace;\n flagship: Flagship;\n hyperdrive: Hyperdrive;\n images: ImagesBinding;\n logfwdr: any;\n media: MediaBinding;\n \"mtls-certificate\": Fetcher;\n \"rate-limit\": RateLimit;\n r2: R2Bucket;\n secret: string;\n \"secrets-store-secret\": SecretsStoreSecret;\n \"send-email\": SendEmail;\n stream: StreamBinding;\n vectorize: VectorizeIndex;\n \"version-metadata\": WorkerVersionMetadata;\n \"vpc-service\": Fetcher;\n \"vpc-network\": Fetcher;\n worker: Fetcher;\n \"worker-loader\": WorkerLoader;\n workflow: Workflow;\n}\ntype SelectedWorkerExportName<TBinding> = TBinding extends {\n exportName?: infer TExportName;\n} ? TExportName extends string ? TExportName : \"default\" : \"default\";\ntype InferBindingType<TBinding> = TBinding extends {\n type: \"worker\";\n worker: infer TWorker extends WorkerReference;\n} ? TWorker extends string ? Fetcher : InferMainModule<UnwrapConfig<TWorker>> extends infer TModule extends WorkerModule ? SelectedWorkerExportName<TBinding> extends infer TExportName ? TExportName extends keyof TModule ? TModule[TExportName] extends Constructor<any> ? Fetcher<ExtractInstance<TModule[TExportName], Rpc.WorkerEntrypointBranded>> : Fetcher : never : never : never : TBinding extends {\n type: \"durable-object\";\n worker: infer TWorker extends WorkerReference;\n exportName: infer TExportName extends string;\n} ? TWorker extends string ? DurableObjectNamespace : InferMainModule<UnwrapConfig<TWorker>> extends infer TModule extends WorkerModule ? TExportName extends keyof TModule ? DurableObjectNamespace<ExtractInstance<TModule[TExportName], Rpc.DurableObjectBranded>> : never : never : TBinding extends {\n type: \"workflow\";\n worker: infer TWorker extends WorkerReference;\n exportName: infer TExportName extends string;\n} ? TWorker extends string ? Workflow : InferMainModule<UnwrapConfig<TWorker>> extends infer TModule extends WorkerModule ? TExportName extends keyof TModule ? ExtractInstance<TModule[TExportName], Rpc.WorkflowEntrypointBranded> extends infer TWorkflow ? TWorkflow extends {\n run(event: {\n payload: infer P;\n }, step: any): any;\n} ? Workflow<P> : Workflow : Workflow : never : never : TBinding extends {\n type: `unsafe:${string}`;\n} ? any : TBinding extends {\n type: infer K extends keyof BindingTypeMap<TBinding>;\n} ? BindingTypeMap<TBinding>[K] : never;\n/**\n * Infer export names from a config's exports, optionally filtered by type.\n * When TExportType is `string` (default), returns all export names.\n * When TExportType is a specific literal like `\"durable-object\"` or `\"workflow\"`,\n * returns only exports of that type.\n */\ntype InferExportsByType<TUnwrappedConfig, TExportType extends string = string> = TUnwrappedConfig extends {\n exports: infer TExports extends Record<string, {\n type: string;\n }>;\n} ? { [K in keyof TExports]: TExports[K] extends {\n type: TExportType;\n} ? K & string : never }[keyof TExports] : never;\n/**\n * Infer `WorkerEntrypoint` export names from a config.\n * Returns named module exports that are not declared as type `\"durable-object\"` or `\"workflow\"` in `exports`.\n * Excludes `\"default\"` since `exportName` should only be provided for named exports.\n */\ntype InferWorkerEntrypointExports<TUnwrappedConfig> = Exclude<keyof InferMainModule<TUnwrappedConfig> & string, \"default\" | InferExportsByType<TUnwrappedConfig, \"durable-object\" | \"workflow\">>;\n/**\n * Unwrap function and promise types to get the underlying config.\n * Use this to normalize a config before passing it to other inference utilities.\n */\ntype UnwrapConfig<TConfig> = TConfig extends ((...args: any[]) => infer TReturn) ? UnwrapConfig<TReturn> : TConfig extends Promise<infer TCompletion> ? UnwrapConfig<TCompletion> : TConfig;\n/**\n * Infer the `Env` interface type from a Worker config.\n *\n * Transforms a config object's `env` bindings into their\n * corresponding Cloudflare runtime types.\n *\n * @example\n * ```typescript\n * import { defineWorker, bindings } from \"@cloudflare/config\";\n * import type { InferEnv, UnwrapConfig } from \"@cloudflare/config\";\n *\n * const config = defineWorker({\n * env: {\n * MY_JSON: bindings.json({ id: string }),\n * MY_KV: bindings.kv(),\n * },\n * });\n *\n * type WorkerConfig = UnwrapConfig<typeof config>;\n * // Inferred as: { MY_JSON: { id: string }; MY_KV: KVNamespace }\n * export type Env = InferEnv<WorkerConfig>;\n * ```\n */\ntype InferEnv<TUnwrappedConfig> = TUnwrappedConfig extends {\n env: infer TEnv extends Record<string, any>;\n} ? { [K in keyof TEnv]: InferBindingType<TEnv[K]> } : never;\n/**\n * Infer the Durable Object namespace names from a Worker config's exports.\n * Returns a union of export names that declare a *live* Durable Object —\n * `type: \"durable-object\"` with `state` either omitted, `\"created\"`, or\n * `\"expecting-transfer\"`. Tombstone entries (`deleted`, `renamed`,\n * `transferred`) are excluded because they retire the namespace and a\n * binding to a tombstoned class would fail at deploy time.\n *\n * @example\n * ```typescript\n * import { defineWorker } from \"@cloudflare/config\";\n * import type { InferDurableNamespaces, UnwrapConfig } from \"@cloudflare/config\";\n *\n * const config = defineWorker({\n * exports: {\n * MyDurableObject: { type: \"durable-object\", storage: \"sqlite\" },\n * OldGone: { type: \"durable-object\", state: \"deleted\" },\n * },\n * });\n *\n * type WorkerConfig = UnwrapConfig<typeof config>;\n * // Inferred as: \"MyDurableObject\" (the deleted tombstone is excluded)\n * type DurableNamespaces = InferDurableNamespaces<WorkerConfig>;\n * ```\n */\ntype InferDurableNamespaces<TUnwrappedConfig> = TUnwrappedConfig extends {\n exports: infer TExports extends Record<string, {\n type: string;\n }>;\n} ? { [K in keyof TExports]: TExports[K] extends {\n type: \"durable-object\";\n} ? TExports[K] extends {\n state: \"deleted\" | \"renamed\" | \"transferred\";\n} ? never : K & string : never }[keyof TExports] : never;\n/**\n * Infer the main module type from a Worker config's entrypoint.\n * If entrypoint is a module namespace object, returns that type.\n * If entrypoint is a `string` or not present, returns `DefaultModule` as a fallback.\n */\ntype InferMainModule<TUnwrappedConfig> = TUnwrappedConfig extends {\n entrypoint: infer TModule extends WorkerModule;\n} ? TModule : DefaultModule;\n//#endregion\n//#region src/triggers.d.ts\ninterface FetchTriggerOptions {\n /**\n * A route that your Worker should be published to.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#types-of-routes\n */\n pattern: string;\n /**\n * The DNS zone the pattern is attached to. Required when the\n * pattern is ambiguous.\n */\n zone?: string;\n}\n/**\n * Fetch trigger — a route that your Worker should be published to.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#types-of-routes\n */\ninterface FetchTrigger extends FetchTriggerOptions {\n type: \"fetch\";\n}\ninterface QueueConsumerTriggerOptions {\n /** The name of the queue from which this consumer should consume. */\n name: string;\n /** The queue to send messages that failed to be consumed. */\n deadLetterQueue?: string;\n /** The maximum number of messages per batch. */\n maxBatchSize?: number;\n /** The maximum number of seconds to wait to fill a batch with messages. */\n maxBatchTimeout?: number;\n /**\n * The maximum number of concurrent consumer Worker invocations.\n * Leaving this unset will allow your consumer to scale to the\n * maximum concurrency needed to keep up with the message backlog.\n */\n maxConcurrency?: number | null;\n /** The maximum number of retries for each message. */\n maxRetries?: number;\n /** The number of seconds to wait before retrying a message. */\n retryDelay?: number;\n /** The number of milliseconds to wait for pulled messages to become visible again. */\n visibilityTimeoutMs?: number;\n}\n/**\n * Queue consumer trigger — invokes this Worker when messages arrive on the\n * named queue.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#queues\n */\ninterface QueueConsumerTrigger extends QueueConsumerTriggerOptions {\n type: \"queue\";\n}\ninterface ScheduledTriggerOptions {\n /**\n * A \"cron\" definition to trigger a Worker's \"scheduled\" function.\n *\n * Lets you call Workers periodically, much like a cron job.\n *\n * More details here https://developers.cloudflare.com/workers/platform/cron-triggers\n */\n schedule: string;\n}\n/**\n * Scheduled (cron) trigger — invokes this Worker on the given schedules.\n *\n * More details here https://developers.cloudflare.com/workers/platform/cron-triggers\n */\ninterface ScheduledTrigger extends ScheduledTriggerOptions {\n type: \"scheduled\";\n}\ninterface EmailTriggerOptions {\n /**\n * Inbound Email Routing addresses handled by this Worker.\n *\n * Each entry is a literal recipient address (e.g. `\"support@example.com\"`)\n * or a `*@domain` catch-all (e.g. `\"*@example.com\"`).\n */\n addresses: string[];\n}\n/**\n * Email trigger — invokes this Worker for the configured Email Routing\n * addresses.\n */\ninterface EmailTrigger extends EmailTriggerOptions {\n type: \"email\";\n}\ninterface ConnectTriggerOptions {\n /** The transport protocol to listen for. */\n protocol: \"tcp\";\n /** The port to listen on. */\n port: number;\n /** The address to bind to. Defaults to `127.0.0.1`. */\n address?: string;\n}\n/**\n * Connect trigger — invokes this Worker's `connect(socket, env, ctx)`\n * handler for raw socket connections received on the configured\n * protocol/port.\n */\ninterface ConnectTrigger extends ConnectTriggerOptions {\n type: \"connect\";\n}\n/**\n * Event triggers — fetch routes, queue consumers, cron schedules, Email\n * Routing addresses, and raw sockets — that invoke this Worker.\n * Construct entries with `triggers.fetch(...)`, `triggers.queue(...)`,\n * `triggers.scheduled(...)`, `triggers.email(...)`, or `triggers.connect(...)`.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#triggers\n */\ninterface Triggers {\n /**\n * Fetch trigger — a route that your Worker should be published to.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#types-of-routes\n */\n fetch(options: FetchTriggerOptions): FetchTrigger;\n /**\n * Queue consumer trigger — invokes this Worker when messages arrive on the\n * named queue.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#queues\n */\n queue(options: QueueConsumerTriggerOptions): QueueConsumerTrigger;\n /**\n * Scheduled (cron) trigger — invokes this Worker on the given schedules.\n *\n * More details here https://developers.cloudflare.com/workers/platform/cron-triggers\n */\n scheduled(options: ScheduledTriggerOptions): ScheduledTrigger;\n /**\n * Email trigger — invokes this Worker for the configured Email Routing\n * addresses.\n */\n email(options: EmailTriggerOptions): EmailTrigger;\n /**\n * Connect trigger — invokes this Worker's `connect(socket, env, ctx)`\n * handler for raw socket connections received on the configured\n * protocol/port.\n */\n connect(options: ConnectTriggerOptions): ConnectTrigger;\n}\n/**\n * Triggers builder for configuring event triggers.\n *\n * @example\n * ```typescript\n * import { defineConfig, triggers } from \"@cloudflare/config\";\n *\n * export default defineConfig({\n * worker: {\n * name: \"my-worker\",\n * compatibilityDate: \"2026-09-17\",\n * triggers: [\n * triggers.fetch({ pattern: \"example.com/*\", zone: \"example.com\" }),\n * triggers.queue({ name: \"my-queue\" }),\n * triggers.scheduled({ schedule: \"0 * * * *\" }),\n * triggers.scheduled({ schedule: \"30 0 * * *\" }),\n * triggers.email({ addresses: [\"support@example.com\"] }),\n * triggers.connect({ protocol: \"tcp\", port: 5432 }),\n * ],\n * },\n * });\n * ```\n */\ndeclare const triggers: Triggers;\n//#endregion\n//#region src/types.d.ts\n/** Account-level values shared by the resources in a configuration. */\ninterface Settings {\n /**\n * This is the ID of the account associated with your zone. It can also be\n * specified through the `CLOUDFLARE_ACCOUNT_ID` environment variable.\n */\n accountId?: string;\n /**\n * The compliance boundary in which commands should operate. When omitted,\n * this can be supplied through `CLOUDFLARE_COMPLIANCE_REGION`.\n */\n complianceRegion?: \"public\" | \"fedramp-high\";\n}\n/** The authored shape of `cloudflare.config.ts`'s default export. */\ninterface CloudflareConfig extends Settings {\n /** The Worker defined by this configuration. */\n worker?: ConfigInput<WorkerConfig>;\n /** Container applications defined by this configuration. */\n containers?: ConfigInput<ContainerConfig>[];\n}\n/**\n * Union of all binding definitions accepted in `env`.\n */\ntype 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;\n/**\n * Union of all trigger definitions accepted in `triggers`.\n */\ntype Trigger = ConnectTrigger | EmailTrigger | FetchTrigger | QueueConsumerTrigger | ScheduledTrigger;\n/**\n * Union of all export definitions accepted in `exports`. Worker entries\n * configure WorkerEntrypoint exports. Durable Object entries configure live\n * classes and tombstone lifecycle operations.\n */\ntype Export = DurableObjectCreatedExport | DurableObjectDeletedExport | DurableObjectRenamedExport | DurableObjectTransferredExport | DurableObjectExpectingTransferExport | WorkerEntrypointExport;\n/** An image source accepted in an authored Container configuration. */\ntype ContainerImage = {\n /** The path to a Dockerfile. */\n dockerfile: string;\n /**\n * Build context of the application.\n *\n * @default The directory containing `dockerfile`.\n */\n buildContext?: string;\n /** Image variables available to the image at build time only. */\n buildVars?: Record<string, string>;\n} | {\n /**\n * Reference to an existing image.\n *\n * For supported registries, refer to\n * https://developers.cloudflare.com/containers/guides/image-management/#use-pre-built-container-images\n */\n reference: string;\n};\n/** Application-wide observability settings shared by all Containers. */\ninterface ContainerObservabilityConfig {\n /** Whether observability is enabled. */\n enabled?: boolean;\n logs?: {\n /** Whether log collection is enabled. */\n enabled?: boolean;\n };\n}\n/** Observability settings for a standard Container application. */\ntype StandardContainerObservabilityConfig = ContainerObservabilityConfig & ({\n /** Percentage of Container instances targeted for observability. */\n targetInstancePercentage?: number;\n targetInstanceCount?: never;\n} | {\n targetInstancePercentage?: never;\n /** Number of Container instances targeted for observability. */\n targetInstanceCount?: number;\n});\n/** Fields shared by all Container application configurations. */\ninterface BaseContainerConfig {\n /**\n * Name of the application.\n *\n * This is also the identifier used to reference the Container from a Durable\n * Object's `exports` entry via its `container` field.\n */\n name: string;\n /**\n * Passed through without client-side validation or transformation.\n *\n * @hidden\n */\n unsafe?: Record<string, unknown>;\n}\n/** A Container application managed with a standard scheduling policy. */\ninterface StandardContainerConfig extends BaseContainerConfig {\n /** Configures observability and optional targeting for Container instances. */\n observability?: StandardContainerObservabilityConfig;\n /** The image to build or deploy. */\n image: ContainerImage;\n /**\n * Maximum number of application instances.\n *\n * @default 20\n */\n maxInstances?: number;\n /**\n * The instance type to be used for the Container.\n * Select from one of the following named instance types:\n *\n * - lite: 1/16 vCPU, 256 MiB memory, and 2 GB disk\n * - basic: 1/4 vCPU, 1 GiB memory, and 4 GB disk\n * - standard-1: 1/2 vCPU, 4 GiB memory, and 8 GB disk\n * - standard-2: 1 vCPU, 6 GiB memory, and 12 GB disk\n * - standard-3: 2 vCPU, 8 GiB memory, and 16 GB disk\n * - standard-4: 4 vCPU, 12 GiB memory, and 20 GB disk\n *\n * Customers on an enterprise plan have the additional option to set custom\n * limits.\n *\n * @default \"lite\"\n */\n instanceType?: \"basic\" | \"lite\" | \"standard-1\" | \"standard-2\" | \"standard-3\" | \"standard-4\" | {\n /** @default 0.0625 (1/16 vCPU) */\n vcpu?: number;\n /** @default 256 MiB */\n memoryMib?: number;\n /** @default 2 GB */\n diskMb?: number;\n };\n /**\n * The scheduling policy of the application.\n *\n * @default \"default\"\n */\n schedulingPolicy?: \"default\" | \"regional\";\n ssh?: {\n /**\n * If enabled, users with write access to the Container application can\n * connect to it over SSH.\n *\n * @default false\n */\n enabled: boolean;\n /**\n * Port that the SSH service is running on.\n *\n * @default 22\n */\n port?: number;\n };\n /** SSH public keys to put in the Container's authorized_keys file. */\n authorizedKeys?: Array<{\n name: string;\n publicKey: string;\n }>;\n /** Scheduling constraints for Container placement. */\n constraints?: {\n /** Limit Container placement to specific geographic regions. */\n regions?: Array<\"ENAM\" | \"WNAM\" | \"EEUR\" | \"WEUR\" | \"APAC\" | \"SAM\" | \"ME\" | \"OC\" | \"AFR\">;\n /** Restrict Containers to compliance boundaries. */\n jurisdiction?: \"eu\" | \"fedramp\";\n };\n rollout?: {\n /**\n * How a rollout should be created. It supports the following modes:\n *\n * - full-auto: The Container application will be rolled out fully\n * automatically.\n * - none: The Container application will not have a rollout or update.\n * - full-manual: The Container application will be rolled out by manually\n * progressing through the rollout steps.\n *\n * @default \"full-auto\"\n * @hidden\n */\n kind?: \"full-auto\" | \"none\" | \"full-manual\";\n /**\n * Configures what percentage of instances should be updated at each step of\n * a rollout. You can specify this as a single number or an array of numbers.\n *\n * If this is a single number, each step will progress by that percentage.\n * The options are 5, 10, 20, 25, 50, or 100.\n *\n * If this is an array, each step specifies the cumulative rollout progress.\n * The final step must be 100.\n *\n * @default [10, 100]\n */\n stepPercentage?: number | number[];\n /**\n * Configures the grace period, in seconds, for active instances before they\n * are shut down during a rollout.\n *\n * @default 0\n */\n activeGracePeriod?: number;\n };\n}\n/** A Container application managed by a Durable Object. */\ninterface DurableObjectContainerConfig extends BaseContainerConfig {\n schedulingPolicy: \"durable-object\";\n /**\n * Configures application-wide observability. Instance targeting is not\n * supported for Durable Object-managed Containers.\n */\n observability?: ContainerObservabilityConfig;\n /** Named images that the Durable Object can start. */\n images?: Record<string, ContainerImage>;\n}\n/**\n * Container application configuration. This is the input shape passed to\n * `defineContainer` and parsed at runtime by `InputContainerSchema`.\n */\ntype ContainerConfig = DurableObjectContainerConfig | StandardContainerConfig;\n/**\n * Worker configuration. This is the input shape passed to\n * [`defineWorker`](https://developers.cloudflare.com/workers/wrangler/configuration/).\n *\n * Fields are parsed and normalised at runtime by `InputWorkerSchema` before\n * being passed to downstream tooling.\n */\ninterface WorkerConfig {\n /**\n * The name of your Worker.\n */\n name: string;\n /**\n * A date in the form yyyy-mm-dd, which will be used to determine\n * which version of the Workers runtime is used.\n *\n * More details at https://developers.cloudflare.com/workers/configuration/compatibility-dates\n */\n compatibilityDate: string;\n /**\n * A list of flags that enable features from upcoming features of\n * the Workers runtime, usually used together with `compatibilityDate`.\n *\n * More details at https://developers.cloudflare.com/workers/configuration/compatibility-flags/\n *\n * @default []\n */\n compatibilityFlags?: string[];\n /**\n * The entrypoint module that will be executed.\n *\n * May be either a path string (e.g. `\"./src/index.ts\"`) or a module\n * namespace imported with the `cf-worker` import attribute.\n *\n * @example\n * ```ts\n * import { defineConfig, defineWorker } from \"@cloudflare/config\";\n * import * as entrypoint from \"./src\" with { type: \"cf-worker\" };\n * const worker = defineWorker({ entrypoint });\n * export default defineConfig({ worker });\n * ```\n */\n entrypoint?: string | WorkerModule;\n /**\n * Specify the directory of static assets to deploy/serve.\n *\n * More details at https://developers.cloudflare.com/workers/frameworks/\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#assets\n */\n assets?: {\n /** How to handle HTML requests. */\n htmlHandling?: \"auto-trailing-slash\" | \"drop-trailing-slash\" | \"force-trailing-slash\" | \"none\";\n /** How to handle requests that do not match an asset. */\n notFoundHandling?: \"single-page-application\" | \"404-page\" | \"none\";\n /**\n * Matches will be routed to the User Worker, and matches to negative rules will go to the Asset Worker.\n *\n * Can also be `true`, indicating that every request should be routed to the User Worker.\n */\n runWorkerFirst?: string[] | boolean;\n };\n /**\n * Custom domains that your Worker should be published to.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#types-of-routes\n */\n domains?: string[];\n /**\n * Event triggers — fetch routes, queue consumers, cron schedules, Email\n * Routing addresses, and raw sockets — that invoke this Worker.\n * Construct entries with `triggers.fetch(...)`, `triggers.queue(...)`,\n * `triggers.scheduled(...)`, `triggers.email(...)`, or\n * `triggers.connect(...)`.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#triggers\n */\n triggers?: Trigger[];\n /**\n * A list of Tail Workers that are bound to this Worker.\n *\n * `@cloudflare/config` unifies regular and streaming tail consumers under\n * a single field; pass `streaming: true` to forward streaming tail events.\n *\n * @default []\n */\n tailConsumers?: Array<{\n /** The name of the service tail events will be forwarded to. */\n worker: string;\n /** Whether to stream tail events in real time. */\n streaming?: boolean;\n }>;\n /**\n * Specify the cache behavior of the Worker.\n */\n cache?: {\n /** If cache is enabled for this Worker. */\n enabled: boolean;\n /** Whether cached assets may be reused across Worker versions. */\n crossVersionCache?: boolean;\n };\n /**\n * Specify how the Worker should be located to minimize round-trip time.\n *\n * More details: https://developers.cloudflare.com/workers/platform/smart-placement/\n */\n placement?: {\n mode: \"off\" | \"smart\";\n hint?: string;\n } | {\n mode?: \"targeted\";\n region: string;\n } | {\n mode?: \"targeted\";\n host: string;\n } | {\n mode?: \"targeted\";\n hostname: string;\n };\n /**\n * Specify limits for runtime behavior.\n * Only supported for the \"standard\" Usage Model.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#limits\n */\n limits?: {\n /** Maximum allowed CPU time for a Worker's invocation in milliseconds. */\n cpuMs?: number;\n /** Maximum allowed number of fetch requests that a Worker's invocation can execute. */\n subrequests?: number;\n };\n /**\n * Send Trace Events from this Worker to Workers Logpush.\n *\n * This will not configure a corresponding Logpush job automatically.\n *\n * For more information about Workers Logpush, see:\n * https://blog.cloudflare.com/logpush-for-workers/\n */\n logpush?: boolean;\n /**\n * Specify the observability behavior of the Worker.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#observability\n */\n observability?: {\n /** If observability is enabled for this Worker. */\n enabled?: boolean;\n /** The sampling rate. */\n headSamplingRate?: number;\n /**\n * Whether query strings are removed from request URLs in logs and traces.\n *\n * @default false\n */\n redactQueryString?: boolean;\n /** Real-time Issues settings for this Worker. */\n issues?: {\n /** Whether real-time Issues are enabled. */\n enabled?: boolean;\n };\n logs?: {\n enabled?: boolean;\n /** The sampling rate. */\n headSamplingRate?: number;\n /** Set to false to disable invocation logs. */\n invocationLogs?: boolean;\n /**\n * If logs should be persisted to the Cloudflare observability platform where they can be queried in the dashboard.\n *\n * @default true\n */\n persist?: boolean;\n /**\n * What destinations logs emitted from the Worker should be sent to.\n *\n * @default []\n */\n destinations?: string[];\n };\n traces?: {\n enabled?: boolean;\n /** The sampling rate. */\n headSamplingRate?: number;\n /**\n * If traces should be persisted to the Cloudflare observability platform where they can be queried in the dashboard.\n *\n * @default true\n */\n persist?: boolean;\n /**\n * What destinations traces emitted from the Worker should be sent to.\n *\n * @default []\n */\n destinations?: string[];\n };\n };\n /**\n * Whether we use `<name>.<subdomain>.workers.dev` to\n * test and deploy your Worker.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#workersdev\n *\n * @default true\n */\n workersDev?: boolean;\n /**\n * Whether we use `<version>-<name>.<subdomain>.workers.dev` to\n * serve Preview URLs for your Worker.\n *\n * @default false\n */\n previewUrls?: boolean;\n /**\n * Designates this Worker as an internal-only \"first-party\" Worker.\n *\n * @internal\n */\n firstPartyWorker?: boolean;\n /**\n * \"Unsafe\" tables for runtime features that aren't directly supported by\n * this configuration. Values are forwarded verbatim in the Worker's\n * upload metadata.\n *\n * @default {}\n */\n unsafe?: {\n /**\n * Arbitrary key/value pairs that will be included in the uploaded metadata. Values specified\n * here will always be applied to metadata last, so can add new or override existing fields.\n */\n metadata?: Record<string, unknown>;\n /**\n * Used for internal capnp uploads for the Workers runtime.\n */\n capnp?: {\n basePath: string;\n sourceSchemas: string[];\n compiledSchema?: never;\n } | {\n basePath?: never;\n sourceSchemas?: never;\n compiledSchema: string;\n };\n };\n /**\n * Bindings exposed on the Worker's `env` object. Construct entries with\n * `bindings.kv(...)`, `bindings.r2(...)`, etc.\n */\n env?: Record<string, Binding>;\n /**\n * Configuration for named exports declared by the Worker. Each entry's\n * key is the exported class name; the value configures the export.\n *\n * Only one export kind is currently supported:\n *\n * - Construct entries with `exports.durableObject(...)`.\n * - Declares Durable Object classes exported from this Worker.\n * For more information about Durable Objects, see the documentation at\n * https://developers.cloudflare.com/workers/learning/using-durable-objects.\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#durable-objects.\n */\n exports?: Record<string, Export>;\n}\n//#endregion\n//#region src/definition.d.ts\ninterface ConfigContext {\n /** Whether the config is being evaluated for a Preview build. */\n isPreview: boolean;\n /**\n * The mode the config is being evaluated in.\n * Set via the `--mode` CLI flag.\n * In Vite the mode defaults to `development` in `vite dev` and `production` in `vite build` ([more info](https://vite.dev/guide/env-and-mode.html#modes)).\n * In Wrangler the mode defaults to `undefined`.\n */\n mode: string | undefined;\n}\n/**\n * A configuration value, promise, or factory. Factories can be passed directly\n * for automatic resolution with the current context or called explicitly with\n * another context before they are used.\n */\ntype ConfigInput<T$1> = T$1 | Promise<T$1> | ((ctx: ConfigContext) => T$1 | Promise<T$1>);\ntype ContainerDefinition<T$1 extends ContainerConfig = ContainerConfig> = ConfigInput<T$1>;\ntype WorkerDefinition<T$1 extends WorkerConfig = WorkerConfig> = ConfigInput<T$1>;\n/** A Worker name, value, promise, or context-aware factory. */\ntype WorkerReference = string | WorkerDefinition;\n/**\n * Used to define the default export in `cloudflare.config.ts`.\n *\n * @example\n * ```typescript\n * import { defineConfig } from \"@cloudflare/config\";\n *\n * export default defineConfig({\n * worker: {\n * name: \"my-worker\",\n * compatibilityDate: \"2026-09-17\",\n * },\n * });\n * ```\n */\ndeclare const defineConfig: <const TInput extends ConfigInput<CloudflareConfig>>(config: TInput) => TInput;\n/**\n * Define a Container.\n *\n * @example\n * ```typescript\n * import { defineContainer } from \"@cloudflare/config\";\n *\n * const container = defineContainer({\n * name: \"my-container\",\n * image: { dockerfile: \"./Dockerfile\" },\n * });\n * ```\n */\ndeclare const defineContainer: <const TInput extends ConfigInput<ContainerConfig>>(config: TInput) => TInput;\n/**\n * Define a Worker.\n *\n * @example\n * ```typescript\n * import { defineWorker } from \"@cloudflare/config\";\n *\n * const worker = defineWorker({\n * name: \"my-worker\",\n * compatibilityDate: \"2026-09-17\",\n * });\n * ```\n */\ndeclare const defineWorker: <const TInput extends ConfigInput<WorkerConfig>>(config: TInput) => TInput;\n//#endregion\n//#region src/utils.d.ts\n/**\n * Represents any valid JSON value.\n */\ntype Json = string | number | boolean | null | Json[] | {\n [key: string]: Json;\n};\n//#endregion\n//#region src/bindings.d.ts\n/** Options that control a binding during local development. */\ninterface BindingDevOptions {\n /** Whether the binding should connect to the remote resource. */\n remote?: boolean;\n}\ninterface AgentMemoryBindingOptions {\n /** The user-chosen namespace name. Must exist in Cloudflare at deploy time. */\n namespace: string;\n /** Options that only apply during local development. */\n dev?: BindingDevOptions;\n}\n/**\n * Agent Memory namespace binding. Each binding is scoped to a namespace and\n * allows agents to persist and recall memory.\n */\ninterface AgentMemoryBinding extends AgentMemoryBindingOptions {\n type: \"agent-memory\";\n}\ninterface AiBindingOptions {\n /** Options that only apply during local development. */\n dev?: BindingDevOptions;\n}\n/**\n * Binding to the Workers AI project.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#workers-ai\n */\ninterface AiBinding extends AiBindingOptions {\n type: \"ai\";\n}\n/**\n * Binding to the Workers AI project.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#workers-ai\n */\ninterface TypedAiBinding<TAiModelList extends AiModelListType = AiModels> extends AiBinding {\n /** @internal Carries type parameters for inference */\n __typeParams: [TAiModelList];\n}\ninterface AiSearchBindingOptions {\n /** The user-chosen instance name. Must exist in Cloudflare at deploy time. */\n name: string;\n /** Options that only apply during local development. */\n dev?: BindingDevOptions;\n}\n/**\n * AI Search instance binding. Each binding is bound directly to a single\n * pre-existing instance within the \"default\" namespace.\n */\ninterface AiSearchBinding extends AiSearchBindingOptions {\n type: \"ai-search\";\n}\ninterface AiSearchNamespaceBindingOptions {\n /** The user-chosen namespace name. Must exist in Cloudflare at deploy time. */\n namespace: string;\n /** Options that only apply during local development. */\n dev?: BindingDevOptions;\n}\n/**\n * AI Search namespace binding. Each binding is scoped to a namespace and\n * allows dynamic instance CRUD within it.\n */\ninterface AiSearchNamespaceBinding extends AiSearchNamespaceBindingOptions {\n type: \"ai-search-namespace\";\n}\ninterface AnalyticsEngineDatasetBindingOptions {\n /** The name of this dataset to write to. */\n name?: string;\n}\n/**\n * Binding to an Analytics Engine dataset.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#analytics-engine-datasets\n */\ninterface AnalyticsEngineDatasetBinding extends AnalyticsEngineDatasetBindingOptions {\n type: \"analytics-engine-dataset\";\n}\ninterface ArtifactsBindingOptions {\n /** The namespace to use. */\n namespace: string;\n /** Options that only apply during local development. */\n dev?: BindingDevOptions;\n}\n/**\n * Binding to an Artifacts instance. Artifacts provides git-compatible file\n * storage on Cloudflare Workers.\n */\ninterface ArtifactsBinding extends ArtifactsBindingOptions {\n type: \"artifacts\";\n}\n/**\n * Binding to the Worker's static assets.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#assets\n */\ninterface AssetsBinding {\n type: \"assets\";\n}\ninterface BrowserBindingOptions {\n /** Options that only apply during local development. */\n dev?: BindingDevOptions;\n}\n/**\n * Binding to a headless browser usable from the Worker.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#browser-rendering\n */\ninterface BrowserBinding extends BrowserBindingOptions {\n type: \"browser\";\n}\ninterface D1BindingOptions {\n /** The UUID of this D1 database (not required). */\n id?: string;\n /** The name of this D1 database. */\n name?: string;\n /** Options that only apply during local development. */\n dev?: BindingDevOptions;\n}\n/**\n * Binding to a D1 database.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#d1-databases\n */\ninterface D1Binding extends D1BindingOptions {\n type: \"d1\";\n}\ninterface DispatchNamespaceBindingOptions {\n /** The namespace to bind to. */\n namespace?: string;\n /** Details about the outbound Worker which will handle outbound requests from your namespace. */\n outbound?: {\n /** Name of the Worker handling the outbound requests. */\n worker: string;\n /** (Optional) List of parameter names, for sending context from your dispatch Worker to the outbound handler. */\n parameters?: string[];\n };\n /** Options that only apply during local development. */\n dev?: BindingDevOptions;\n}\n/**\n * Binding to a Workers for Platforms dispatch namespace.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#dispatch-namespace-bindings-workers-for-platforms\n */\ninterface DispatchNamespaceBinding extends DispatchNamespaceBindingOptions {\n type: \"dispatch-namespace\";\n}\ntype ReferencedWorkerConfig<TWorker$1 extends WorkerReference> = TWorker$1 extends string ? never : UnwrapConfig<TWorker$1>;\ntype DurableObjectExportName<TWorker$1 extends WorkerReference> = TWorker$1 extends string ? string : InferDurableNamespaces<ReferencedWorkerConfig<TWorker$1>>;\ntype WorkerEntrypointExportName<TWorker$1 extends WorkerReference> = TWorker$1 extends string ? string : InferWorkerEntrypointExports<ReferencedWorkerConfig<TWorker$1>>;\ntype WorkflowExportName<TWorker$1 extends WorkerReference> = TWorker$1 extends string ? string : InferExportsByType<ReferencedWorkerConfig<TWorker$1>, \"workflow\">;\ninterface DurableObjectBindingOptions<TWorker$1 extends WorkerReference = WorkerReference, TExportName$1 extends DurableObjectExportName<TWorker$1> = DurableObjectExportName<TWorker$1>> {\n /** The name or config of the Worker that defines the Durable Object class. */\n worker: TWorker$1;\n /** The exported class name of the Durable Object. */\n exportName: TExportName$1;\n}\n/**\n * Binding to a Durable Object class. `worker` is the name or config of the\n * Worker that defines the class; `exportName` is the exported class name.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#durable-objects\n */\ninterface DurableObjectBinding<TWorker$1 extends WorkerReference = WorkerReference, TExportName$1 extends DurableObjectExportName<TWorker$1> = DurableObjectExportName<TWorker$1>> extends DurableObjectBindingOptions<TWorker$1, TExportName$1> {\n type: \"durable-object\";\n}\ninterface FlagshipBindingOptions {\n /** The Flagship app ID to bind to. */\n id?: string;\n /** Options that only apply during local development. */\n dev?: BindingDevOptions;\n}\n/** Binding to a Flagship feature-flag service. */\ninterface FlagshipBinding extends FlagshipBindingOptions {\n type: \"flagship\";\n}\ninterface HyperdriveBindingOptions {\n /** The ID of the Hyperdrive configuration. */\n id: string;\n /** Options that only apply during local development. */\n dev?: {\n /** The database connection string used during local development. */\n connectionString?: string;\n };\n}\n/**\n * Binding to a Hyperdrive configuration.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#hyperdrive\n */\ninterface HyperdriveBinding extends HyperdriveBindingOptions {\n type: \"hyperdrive\";\n}\ninterface ImagesBindingOptions {\n /** Options that only apply during local development. */\n dev?: BindingDevOptions;\n}\n/**\n * Binding to Cloudflare Images.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#images\n */\ninterface ImagesBinding$1 extends ImagesBindingOptions {\n type: \"images\";\n}\n/**\n * Inline JSON value made available to the Worker on `env` under the\n * binding name.\n */\ninterface JsonBinding<T$1 extends Json = Json> {\n type: \"json\";\n /** The JSON value made available to the Worker. */\n value: T$1;\n}\ninterface KvBindingOptions {\n /** The ID of the KV namespace. */\n id?: string;\n /** Options that only apply during local development. */\n dev?: BindingDevOptions;\n}\n/**\n * Binding to a Workers KV namespace.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#kv-namespaces\n */\ninterface KvBinding extends KvBindingOptions {\n type: \"kv\";\n}\n/**\n * Binding to a Workers KV namespace.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#kv-namespaces\n */\ninterface TypedKvBinding<TKey extends string = string> extends KvBinding {\n /** @internal Carries type parameters for inference */\n __typeParams: [TKey];\n}\ninterface LogfwdrBindingOptions {\n /** The destination for this logged message. */\n destination: string;\n}\n/** Binding for forwarding logs to logfwdr. */\ninterface LogfwdrBinding extends LogfwdrBindingOptions {\n type: \"logfwdr\";\n}\ninterface MediaBindingOptions {\n /** Options that only apply during local development. */\n dev?: BindingDevOptions;\n}\n/** Binding to Cloudflare Media Transformations. */\ninterface MediaBinding$1 extends MediaBindingOptions {\n type: \"media\";\n}\ninterface MtlsCertificateBindingOptions {\n /** The UUID of the uploaded mTLS certificate. */\n id: string;\n /** Options that only apply during local development. */\n dev?: BindingDevOptions;\n}\n/**\n * Binding to an uploaded mTLS certificate.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#mtls-certificates\n */\ninterface MtlsCertificateBinding extends MtlsCertificateBindingOptions {\n type: \"mtls-certificate\";\n}\ninterface PipelineBindingOptions {\n /** Name of the Pipeline to bind. */\n name: string;\n /** Options that only apply during local development. */\n dev?: BindingDevOptions;\n}\n/** Binding to a Cloudflare Pipeline. */\ninterface PipelineBinding extends PipelineBindingOptions {\n type: \"pipeline\";\n}\n/** Binding to a Cloudflare Pipeline. */\ninterface TypedPipelineBinding<TRecord extends PipelineRecord = PipelineRecord> extends PipelineBinding {\n /** @internal Carries type parameters for inference */\n __typeParams: [TRecord];\n}\ninterface QueueBindingOptions {\n /** The name of this Queue. */\n name?: string;\n /** The number of seconds to wait before delivering a message. */\n deliveryDelay?: number;\n /** Options that only apply during local development. */\n dev?: BindingDevOptions;\n}\n/**\n * Producer binding to a Cloudflare Queue.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#queues\n */\ninterface QueueBinding extends QueueBindingOptions {\n type: \"queue\";\n}\n/**\n * Producer binding to a Cloudflare Queue.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#queues\n */\ninterface TypedQueueBinding<TBody = unknown> extends QueueBinding {\n /** @internal Carries type parameters for inference */\n __typeParams: [TBody];\n}\ninterface R2BindingOptions {\n /** The name of this R2 bucket at the edge. */\n name?: string;\n /** The jurisdiction that the bucket exists in. Default if not present. */\n jurisdiction?: string;\n /** Settings that only apply to local development. */\n dev?: BindingDevOptions & {\n /** EXPERIMENTAL: credentials for the local S3-compatible endpoint. */\n experimentalS3Credentials?: {\n accessKeyId: string;\n secretAccessKey: string;\n };\n };\n}\n/**\n * Binding to an R2 bucket.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#r2-buckets\n */\ninterface R2Binding extends R2BindingOptions {\n type: \"r2\";\n}\ninterface RateLimitBindingOptions {\n /** The namespace ID for this rate limiter. */\n namespace: string;\n /** Simple rate limiting configuration. */\n simple: {\n /** The maximum number of requests allowed in the time period. */\n limit: number;\n /** The time period in seconds (10 for ten seconds, 60 for one minute). */\n period: 10 | 60;\n };\n}\n/** Binding to a rate limiter. */\ninterface RateLimitBinding extends RateLimitBindingOptions {\n type: \"rate-limit\";\n}\n/**\n * Declares a secret that is required by your Worker, exposed on `env` under\n * the binding name.\n *\n * When defined, this binding:\n * - Replaces .dev.vars/.env/process.env inference for type generation\n * - Enables local dev validation with warnings for missing secrets\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#secrets-configuration-property\n */\ninterface SecretBinding {\n type: \"secret\";\n}\ninterface SecretsStoreSecretBindingOptions {\n /** ID of the secret store. */\n storeId: string;\n /** Name of the secret. */\n secretName: string;\n}\n/** Binding to a Secrets Store secret. */\ninterface SecretsStoreSecretBinding extends SecretsStoreSecretBindingOptions {\n type: \"secrets-store-secret\";\n}\ntype SendEmailDestinationOptions = {\n /** If this binding should be restricted to a specific verified address. */\n destinationAddress: string;\n allowedDestinationAddresses?: never;\n} | {\n destinationAddress?: never;\n /** If this binding should be restricted to a set of verified addresses. */\n allowedDestinationAddresses: string[];\n} | {\n destinationAddress?: never;\n allowedDestinationAddresses?: never;\n};\ntype SendEmailBindingOptions = SendEmailDestinationOptions & {\n /** If this binding should be restricted to a set of sender addresses. */\n allowedSenderAddresses?: string[];\n /** Options that only apply during local development. */\n dev?: BindingDevOptions;\n};\n/**\n * Binding for sending email from inside the Worker.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#email-bindings\n */\ntype SendEmailBinding = SendEmailBindingOptions & {\n type: \"send-email\";\n};\ninterface StreamBindingOptions {\n /** Options that only apply during local development. */\n dev?: BindingDevOptions;\n}\n/** Binding to Cloudflare Stream. */\ninterface StreamBinding$1 extends StreamBindingOptions {\n type: \"stream\";\n}\n/**\n * Inline string value made available to the Worker on `env` under the\n * binding name.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#environment-variables\n */\ninterface TextBinding<T$1 extends string = string> {\n type: \"text\";\n /** The string value made available to the Worker. */\n value: T$1;\n}\ninterface UnsafeBindingOptions {\n /** Local-dev plugin configuration for this unsafe binding. */\n dev?: {\n /** The plugin package that provides the binding's local-dev implementation. */\n plugin: {\n package: string;\n name: string;\n };\n /** Plugin-specific options. */\n options?: Record<string, unknown>;\n };\n [key: string]: unknown;\n}\n/**\n * Escape-hatch binding for runtime features that aren't directly supported\n * by this configuration. Included in the Worker's upload metadata without\n * changes.\n */\ninterface UnsafeBinding extends UnsafeBindingOptions {\n type: `unsafe:${string}`;\n}\ninterface VectorizeBindingOptions {\n /** The name of the Vectorize index. */\n name: string;\n /** Options that only apply during local development. */\n dev?: BindingDevOptions;\n}\n/**\n * Binding to a Vectorize index.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#vectorize-indexes\n */\ninterface VectorizeBinding extends VectorizeBindingOptions {\n type: \"vectorize\";\n}\n/** Binding to the Worker version's metadata. */\ninterface VersionMetadataBinding {\n type: \"version-metadata\";\n}\ntype VpcNetworkBindingOptions = {\n /** The tunnel ID of the Cloudflare Tunnel to route traffic through. Mutually exclusive with `networkId`. */\n tunnelId: string;\n networkId?: never;\n /** Options that only apply during local development. */\n dev?: BindingDevOptions;\n} | {\n tunnelId?: never;\n /** The network ID to route traffic through. Mutually exclusive with `tunnelId`. */\n networkId: string;\n /** Options that only apply during local development. */\n dev?: BindingDevOptions;\n};\n/** Binding to a VPC network. */\ntype VpcNetworkBinding = VpcNetworkBindingOptions & {\n type: \"vpc-network\";\n};\ninterface VpcServiceBindingOptions {\n /** The service ID of the VPC connectivity service. */\n id: string;\n /** Options that only apply during local development. */\n dev?: BindingDevOptions;\n}\n/** Binding to a VPC service. */\ninterface VpcServiceBinding extends VpcServiceBindingOptions {\n type: \"vpc-service\";\n}\ninterface WorkerBindingOptions<TWorker$1 extends WorkerReference = WorkerReference, TExportName$1 extends WorkerEntrypointExportName<TWorker$1> | undefined = WorkerEntrypointExportName<TWorker$1> | undefined> {\n /** The name or config of the bound Worker. */\n worker: TWorker$1;\n /** The named export to bind to (defaults to the default export). */\n exportName?: TExportName$1;\n /** Optional properties that will be made available to the service via `ctx.props`. */\n props?: Record<string, unknown>;\n /** Options that only apply during local development. */\n dev?: BindingDevOptions;\n}\n/**\n * Service binding (Worker-to-Worker). `worker` is the name or config of the\n * bound Worker; `exportName` selects a named `WorkerEntrypoint` export\n * (defaults to the default export).\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#service-bindings\n */\ninterface WorkerBinding<TWorker$1 extends WorkerReference = WorkerReference, TExportName$1 extends WorkerEntrypointExportName<TWorker$1> | undefined = WorkerEntrypointExportName<TWorker$1> | undefined> extends WorkerBindingOptions<TWorker$1, TExportName$1> {\n type: \"worker\";\n}\n/** Binding to a Worker Loader. */\ninterface WorkerLoaderBinding {\n type: \"worker-loader\";\n}\ninterface WorkflowBindingOptions<TWorker$1 extends WorkerReference = WorkerReference, TExportName$1 extends WorkflowExportName<TWorker$1> = WorkflowExportName<TWorker$1>> {\n /** The name or config of the Worker that defines the Workflow. */\n worker: TWorker$1;\n /** The exported class name of the Workflow. */\n exportName: TExportName$1;\n}\n/**\n * Binding to a Workflow. `worker` is the name or config of the Worker that\n * defines the Workflow; `exportName` is the exported `WorkflowEntrypoint`\n * class name.\n */\ninterface WorkflowBinding<TWorker$1 extends WorkerReference = WorkerReference, TExportName$1 extends WorkflowExportName<TWorker$1> = WorkflowExportName<TWorker$1>> extends WorkflowBindingOptions<TWorker$1, TExportName$1> {\n type: \"workflow\";\n}\ninterface Bindings {\n /**\n * Agent Memory namespace binding. Each binding is scoped to a namespace and\n * allows agents to persist and recall memory.\n */\n agentMemory(options: AgentMemoryBindingOptions): AgentMemoryBinding;\n /**\n * Binding to the Workers AI project.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#workers-ai\n */\n ai<TAiModelList extends AiModelListType = AiModels>(options?: AiBindingOptions): TypedAiBinding<TAiModelList>;\n /**\n * AI Search instance binding. Each binding is bound directly to a single\n * pre-existing instance within the \"default\" namespace.\n */\n aiSearch(options: AiSearchBindingOptions): AiSearchBinding;\n /**\n * AI Search namespace binding. Each binding is scoped to a namespace and\n * allows dynamic instance CRUD within it.\n */\n aiSearchNamespace(options: AiSearchNamespaceBindingOptions): AiSearchNamespaceBinding;\n /**\n * Binding to an Analytics Engine dataset.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#analytics-engine-datasets\n */\n analyticsEngineDataset(options?: AnalyticsEngineDatasetBindingOptions): AnalyticsEngineDatasetBinding;\n /**\n * Binding to an Artifacts instance. Artifacts provides git-compatible file\n * storage on Cloudflare Workers.\n */\n artifacts(options: ArtifactsBindingOptions): ArtifactsBinding;\n /**\n * Binding to the Worker's static assets.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#assets\n */\n assets(): AssetsBinding;\n /**\n * Binding to a headless browser usable from the Worker.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#browser-rendering\n */\n browser(options?: BrowserBindingOptions): BrowserBinding;\n /**\n * Binding to a D1 database.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#d1-databases\n */\n d1(options?: D1BindingOptions): D1Binding;\n /**\n * Binding to a Workers for Platforms dispatch namespace.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#dispatch-namespace-bindings-workers-for-platforms\n */\n dispatchNamespace(options?: DispatchNamespaceBindingOptions): DispatchNamespaceBinding;\n /**\n * Binding to a Durable Object class. `worker` is the name or config of the\n * Worker that defines the class; `exportName` is the exported class name.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#durable-objects\n */\n durableObject<TWorker$1 extends WorkerReference, TExportName$1 extends DurableObjectExportName<TWorker$1>>(options: DurableObjectBindingOptions<TWorker$1, TExportName$1>): DurableObjectBinding<TWorker$1, TExportName$1>;\n /** Binding to a Flagship feature-flag service. */\n flagship(options?: FlagshipBindingOptions): FlagshipBinding;\n /**\n * Binding to a Hyperdrive configuration.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#hyperdrive\n */\n hyperdrive(options: HyperdriveBindingOptions): HyperdriveBinding;\n /**\n * Binding to Cloudflare Images.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#images\n */\n images(options?: ImagesBindingOptions): ImagesBinding$1;\n /**\n * Inline JSON value made available to the Worker on `env` under the\n * binding name.\n */\n json<T$1 extends Json>(value: T$1): JsonBinding<T$1>;\n /**\n * Binding to a Workers KV namespace.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#kv-namespaces\n */\n kv<TKey extends string = string>(options?: KvBindingOptions): TypedKvBinding<TKey>;\n /** Binding for forwarding logs to logfwdr. */\n logfwdr(options: LogfwdrBindingOptions): LogfwdrBinding;\n /** Binding to Cloudflare Media Transformations. */\n media(options?: MediaBindingOptions): MediaBinding$1;\n /**\n * Binding to an uploaded mTLS certificate.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#mtls-certificates\n */\n mtlsCertificate(options: MtlsCertificateBindingOptions): MtlsCertificateBinding;\n /** Binding to a Cloudflare Pipeline. */\n pipeline<TRecord extends PipelineRecord = PipelineRecord>(options: PipelineBindingOptions): TypedPipelineBinding<TRecord>;\n /**\n * Producer binding to a Cloudflare Queue.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#queues\n */\n queue<TBody = unknown>(options?: QueueBindingOptions): TypedQueueBinding<TBody>;\n /**\n * Binding to an R2 bucket.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#r2-buckets\n */\n r2(options?: R2BindingOptions): R2Binding;\n /** Binding to a rate limiter. */\n rateLimit(options: RateLimitBindingOptions): RateLimitBinding;\n /**\n * Declares a secret that is required by your Worker, exposed on `env` under\n * the binding name.\n *\n * When defined, this binding:\n * - Replaces .dev.vars/.env/process.env inference for type generation\n * - Enables local dev validation with warnings for missing secrets\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#secrets-configuration-property\n */\n secret(): SecretBinding;\n /** Binding to a Secrets Store secret. */\n secretsStoreSecret(options: SecretsStoreSecretBindingOptions): SecretsStoreSecretBinding;\n /**\n * Binding for sending email from inside the Worker.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#email-bindings\n */\n sendEmail(options?: SendEmailBindingOptions): SendEmailBinding;\n /** Binding to Cloudflare Stream. */\n stream(options?: StreamBindingOptions): StreamBinding$1;\n /**\n * Inline string value made available to the Worker on `env` under the\n * binding name.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#environment-variables\n */\n text<T$1 extends string>(value: T$1): TextBinding<T$1>;\n /**\n * Binding to a Vectorize index.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#vectorize-indexes\n */\n vectorize(options: VectorizeBindingOptions): VectorizeBinding;\n /** Binding to the Worker version's metadata. */\n versionMetadata(): VersionMetadataBinding;\n /** Binding to a VPC network. */\n vpcNetwork(options: VpcNetworkBindingOptions): VpcNetworkBinding;\n /** Binding to a VPC service. */\n vpcService(options: VpcServiceBindingOptions): VpcServiceBinding;\n /**\n * Service binding (Worker-to-Worker). `worker` is the name or config of the\n * bound Worker; `exportName` selects a named `WorkerEntrypoint` export\n * (defaults to the default export).\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#service-bindings\n */\n worker<TWorker$1 extends WorkerReference, TExportName$1 extends WorkerEntrypointExportName<TWorker$1> | undefined = undefined>(options: WorkerBindingOptions<TWorker$1, TExportName$1>): WorkerBinding<TWorker$1, NoInfer<TExportName$1>>;\n /** Binding to a Worker Loader. */\n workerLoader(): WorkerLoaderBinding;\n}\ndeclare const bindings: Bindings;\n//#endregion\nexport { 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, 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, exports 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, LogfwdrBinding as y, WorkerEntrypointExportOptions as yt, VpcServiceBinding as z };"],"mappings":"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"}
1
+ {"version":3,"file":"experimental-config.d.mts","names":["Pipeline","PipelineRecord","DurableObjectStorageOptions","TContainer","ContainerDefinition","DurableObjectCreatedExportOptions","DurableObjectDeletedExportOptions","DurableObjectRenamedExportOptions","DurableObjectTransferredExportOptions","DurableObjectExpectingTransferExportOptions","DurableObjectCreatedExport","DurableObjectDeletedExport","DurableObjectRenamedExport","DurableObjectTransferredExport","DurableObjectExpectingTransferExport","DurableObjectExportOptions","DurableObjectExports","WorkerEntrypointExportOptions","WorkerEntrypointExport","Exports","exports","WorkerModule","Record","DefaultModule","ExportedHandler","Rpc","WorkerEntrypointBranded","Constructor","DurableObjectBranded","WorkflowEntrypointBranded","TInstance","ExtractInstance","T$1","InstanceType","BindingTypeMap","TBinding","TypedAiBinding","T","Ai","JsonBinding","TypedKvBinding","KVNamespace","TypedPipelineBinding","TypedQueueBinding","Queue","TextBinding","AgentMemoryNamespace","AiSearchInstance","AiSearchNamespace","AnalyticsEngineDataset","Artifacts","Fetcher","BrowserRun","D1Database","DispatchNamespace","DurableObjectNamespace","Flagship","Hyperdrive","ImagesBinding","MediaBinding","RateLimit","R2Bucket","SecretsStoreSecret","SendEmail","StreamBinding","VectorizeIndex","WorkerVersionMetadata","WorkerLoader","Workflow","SelectedWorkerExportName","TExportName","InferBindingType","WorkerReference","TWorker","UnwrapConfig","InferMainModule","TModule","TWorkflow","P","K","InferExportsByType","TUnwrappedConfig","TExportType","TExports","InferWorkerEntrypointExports","Exclude","TConfig","TReturn","Promise","TCompletion","InferEnv","TEnv","InferDurableNamespaces","FetchTriggerOptions","FetchTrigger","QueueConsumerTriggerOptions","QueueConsumerTrigger","ScheduledTriggerOptions","ScheduledTrigger","EmailTriggerOptions","EmailTrigger","ConnectTriggerOptions","ConnectTrigger","Triggers","triggers","Settings","CloudflareConfig","WorkerConfig","ConfigInput","ContainerConfig","Binding","AgentMemoryBinding","AiBinding","AiSearchBinding","AiSearchNamespaceBinding","AnalyticsEngineDatasetBinding","ArtifactsBinding","AssetsBinding","BrowserBinding","D1Binding","DispatchNamespaceBinding","DurableObjectBinding","FlagshipBinding","HyperdriveBinding","ImagesBinding$1","KvBinding","LogfwdrBinding","MediaBinding$1","MtlsCertificateBinding","PipelineBinding","QueueBinding","R2Binding","RateLimitBinding","SecretBinding","SecretsStoreSecretBinding","SendEmailBinding","StreamBinding$1","UnsafeBinding","VectorizeBinding","VersionMetadataBinding","VpcNetworkBinding","VpcServiceBinding","WorkerBinding","WorkerLoaderBinding","Trigger","Export","ContainerImage","ContainerObservabilityConfig","StandardContainerObservabilityConfig","BaseContainerConfig","StandardContainerConfig","Array","DurableObjectContainerConfig","ConfigContext","WorkerDefinition","defineConfig","TInput","defineContainer","defineWorker","Json","BindingDevOptions","AgentMemoryBindingOptions","AiBindingOptions","TAiModelList","AiModelListType","AiModels","AiSearchBindingOptions","AiSearchNamespaceBindingOptions","AnalyticsEngineDatasetBindingOptions","ArtifactsBindingOptions","BrowserBindingOptions","D1BindingOptions","DispatchNamespaceBindingOptions","ReferencedWorkerConfig","TWorker$1","DurableObjectExportName","WorkerEntrypointExportName","WorkflowExportName","DurableObjectBindingOptions","TExportName$1","FlagshipBindingOptions","HyperdriveBindingOptions","ImagesBindingOptions","KvBindingOptions","TKey","LogfwdrBindingOptions","MediaBindingOptions","MtlsCertificateBindingOptions","PipelineBindingOptions","TRecord","QueueBindingOptions","TBody","R2BindingOptions","RateLimitBindingOptions","SecretsStoreSecretBindingOptions","SendEmailDestinationOptions","SendEmailBindingOptions","StreamBindingOptions","UnsafeBindingOptions","VectorizeBindingOptions","VpcNetworkBindingOptions","VpcServiceBindingOptions","WorkerBindingOptions","WorkflowBindingOptions","WorkflowBinding","Bindings","NoInfer","bindings","$","A","B","C","D","E","F","G","H","I","J","L","M","N","O","Q","R","S","U","V","W","X","Y","Z","_","_t","a","at","b","bt","c","ct","d","dt","et","f","ft","g","gt","h","ht","i","it","j","k","l","lt","m","mt","n","nt","o","ot","p","pt","q","r","rt","s","st","t","tt","u","ut","v","vt","w","x","y","yt","z"],"sources":["../../config/dist/public-fVh2BrM5.d.mts","../src/experimental-config/types.ts","../src/experimental-config/wrangler-definition.ts"],"sourcesContent":["import { Pipeline, PipelineRecord } from \"cloudflare:pipelines\";\n\n//#region src/exports.d.ts\n\n/**\n * Storage backend for the Durable Object.\n *\n * Containers are only supported on the SQLite storage engine, so `container` is\n * only offered alongside `storage: \"sqlite\"`.\n */\ntype DurableObjectStorageOptions<TContainer extends ContainerDefinition | undefined = ContainerDefinition | undefined> = {\n /**\n * Selects the SQLite-backed storage engine (recommended for new\n * classes).\n */\n storage: \"sqlite\";\n /**\n * Attach a Container application to this Durable Object by config reference.\n */\n container?: TContainer;\n} | {\n /** Selects the legacy key-value storage engine. */\n storage: \"legacy-kv\";\n};\n/**\n * Declares a provisioned Durable Object class exported from this Worker.\n *\n * For more information about Durable Objects, see the documentation at\n * https://developers.cloudflare.com/workers/learning/using-durable-objects\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#durable-objects\n */\ntype DurableObjectCreatedExportOptions<TContainer extends ContainerDefinition | undefined = ContainerDefinition | undefined> = {\n state?: \"created\";\n} & DurableObjectStorageOptions<TContainer>;\n/**\n * Retire a provisioned Durable Object namespace whose class has\n * been removed from code.\n *\n * During deploy, the class must not be exported in the uploaded code, and no\n * other Worker may hold a `durableObject` binding to the namespace.\n */\ninterface DurableObjectDeletedExportOptions {\n state: \"deleted\";\n}\n/**\n * Rename a provisioned Durable Object namespace's class. The\n * `renamedTo` value must also appear as a live (`state: \"created\"`)\n * `durableObject` entry in the same `exports` map.\n */\ninterface DurableObjectRenamedExportOptions {\n state: \"renamed\";\n /**\n * The destination class name. Must be a valid JavaScript identifier and\n * must appear as a live (`state: \"created\"`) `durableObject` entry in the\n * same `exports` map.\n */\n renamedTo: string;\n}\n/**\n * Transfer ownership of a Durable Object namespace to another Worker in the same account.\n * The target Worker must first deploy an `expectingTransfer` entry naming this Worker via `transferFrom`.\n */\ninterface DurableObjectTransferredExportOptions {\n state: \"transferred\";\n /**\n * The destination Worker. Must reference a Worker in the same account.\n */\n transferredTo: string;\n}\n/**\n * Prepare to receive cross-Worker Durable Object transfer.\n * Once the source Worker's `transferred` export is deployed, this entry becomes a normal live `durable-object` export.\n */\ntype DurableObjectExpectingTransferExportOptions<TContainer extends ContainerDefinition | undefined = ContainerDefinition | undefined> = {\n state: \"expecting-transfer\";\n /**\n * The source Worker for the two-phase cross-Worker transfer.\n */\n transferFrom: string;\n} & DurableObjectStorageOptions<TContainer>;\ntype DurableObjectCreatedExport<TContainer extends ContainerDefinition | undefined = ContainerDefinition | undefined> = DurableObjectCreatedExportOptions<TContainer> & {\n type: \"durable-object\";\n};\ninterface DurableObjectDeletedExport extends DurableObjectDeletedExportOptions {\n type: \"durable-object\";\n}\ninterface DurableObjectRenamedExport extends DurableObjectRenamedExportOptions {\n type: \"durable-object\";\n}\ninterface DurableObjectTransferredExport extends DurableObjectTransferredExportOptions {\n type: \"durable-object\";\n}\ntype DurableObjectExpectingTransferExport<TContainer extends ContainerDefinition | undefined = ContainerDefinition | undefined> = DurableObjectExpectingTransferExportOptions<TContainer> & {\n type: \"durable-object\";\n};\ntype DurableObjectExportOptions = DurableObjectCreatedExportOptions | DurableObjectDeletedExportOptions | DurableObjectRenamedExportOptions | DurableObjectTransferredExportOptions | DurableObjectExpectingTransferExportOptions;\ntype DurableObjectExports = DurableObjectCreatedExport | DurableObjectDeletedExport | DurableObjectRenamedExport | DurableObjectTransferredExport | DurableObjectExpectingTransferExport;\ninterface WorkerEntrypointExportOptions {\n cache?: {\n /** Whether cache is enabled for this entrypoint. */\n enabled: boolean;\n };\n}\ninterface WorkerEntrypointExport extends WorkerEntrypointExportOptions {\n type: \"worker\";\n}\n/**\n * Configuration for named exports declared by the Worker. Each entry's\n * key is the exported class name; the value configures the export.\n */\ninterface Exports {\n /**\n * Declares a Durable Object class defined by this Worker.\n *\n * For more information about Durable Objects, see the documentation at\n * https://developers.cloudflare.com/workers/learning/using-durable-objects\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#durable-objects\n */\n durableObject<TContainer extends ContainerDefinition | undefined = undefined>(options: DurableObjectCreatedExportOptions<TContainer>): DurableObjectCreatedExport<TContainer>;\n /**\n * Retire a provisioned Durable Object namespace whose class has been removed from code.\n */\n durableObject(options: DurableObjectDeletedExportOptions): DurableObjectDeletedExport;\n /**\n * Rename a provisioned Durable Object namespace's class.\n */\n durableObject(options: DurableObjectRenamedExportOptions): DurableObjectRenamedExport;\n /**\n * Transfer ownership of a Durable Object namespace to another Worker in the same account.\n */\n durableObject(options: DurableObjectTransferredExportOptions): DurableObjectTransferredExport;\n /**\n * Prepare to receive cross-Worker Durable Object transfer.\n * The source Worker must follow up with a deployment containing a `transferred` export to commit the transfer.\n */\n durableObject<TContainer extends ContainerDefinition | undefined = undefined>(options: DurableObjectExpectingTransferExportOptions<TContainer>): DurableObjectExpectingTransferExport<TContainer>;\n durableObject(options: DurableObjectExportOptions): DurableObjectExports;\n /** Declares a WorkerEntrypoint export defined by this Worker. */\n worker(options?: WorkerEntrypointExportOptions): WorkerEntrypointExport;\n}\n/**\n * Exports builder for configuring Worker exports.\n *\n * @example\n * ```typescript\n * import { defineConfig, defineContainer, defineWorker, exports } from \"@cloudflare/config\";\n *\n * const myContainer = defineContainer({\n * name: \"my-container\",\n * image: { dockerfile: \"./Dockerfile\" },\n * });\n *\n * const worker = defineWorker({\n * exports: {\n * MyDurableObject: exports.durableObject({ storage: \"sqlite\" }),\n * MyContainerDO: exports.durableObject({ storage: \"sqlite\", container: myContainer }),\n * OldClass: exports.durableObject({ state: \"deleted\" }),\n * OldName: exports.durableObject({ state: \"renamed\", renamedTo: \"NewName\" }),\n * Outgoing: exports.durableObject({ state: \"transferred\", transferredTo: \"target-worker\" }),\n * Incoming: exports.durableObject({ state: \"expecting-transfer\", storage: \"sqlite\", transferFrom: \"source-worker\" }),\n * },\n * });\n *\n * export default defineConfig({ worker, containers: [myContainer] });\n * ```\n */\ndeclare const exports: Exports;\n//#endregion\n//#region src/inference.d.ts\n/**\n * The Worker's entry module, imported with the `{ type: \"cf-worker\" }` import attribute\n * @example\n * ```ts\n * import * as entrypoint from \"./src\" with { type: \"cf-worker\" };\n * ```\n */\ntype WorkerModule = Record<string, any>;\n/**\n * Default module type representing an unknown Worker's exports.\n * - default export can be `ExportedHandler` or a `WorkerEntrypoint` class constructor\n * - named exports can be `WorkerEntrypoint`, `DurableObject`, or `WorkflowEntrypoint` class constructors\n */\ninterface DefaultModule {\n default?: ExportedHandler | Constructor<Rpc.WorkerEntrypointBranded>;\n [key: string]: ExportedHandler | Constructor<Rpc.WorkerEntrypointBranded> | Constructor<Rpc.DurableObjectBranded> | Constructor<Rpc.WorkflowEntrypointBranded> | undefined;\n}\n/**\n * Represents a class constructor that creates instances of TInstance.\n */\ntype Constructor<TInstance> = new (...args: any[]) => TInstance;\n/**\n * Extracts the instance type from a class constructor if it extends `TInstance`.\n */\ntype ExtractInstance<T$1, TInstance> = T$1 extends Constructor<TInstance> ? InstanceType<T$1> : never;\n/**\n * Mapping from binding type literals to Cloudflare runtime types.\n *\n * Entries fall into two groups:\n * - Parameterized bindings (ai, json, kv, pipeline, queue, text) refine their\n * runtime type from the binding instance via nominal matches against the\n * `Typed*Binding` / `JsonBinding` / `TextBinding` interfaces from\n * `./bindings`. When `TBinding` does not match, the entry falls back to the\n * unparameterized runtime type.\n * - Non-parameterized bindings map their type literal directly to a runtime\n * type and ignore `TBinding`.\n *\n * IMPORTANT: The right-hand-side identifiers in this map (e.g. `KVNamespace`,\n * `ImagesBinding`, `Fetcher`) must resolve to the ambient runtime types from\n * `@cloudflare/workers-types`, not to local config interfaces. Several local\n * binding interfaces in `./bindings.ts` (`ImagesBinding`, `MediaBinding`,\n * `StreamBinding`) share names with ambient globals — importing those local\n * types into this file silently shadows the globals and breaks `InferEnv`.\n * Only import the `Typed*Binding`, `JsonBinding`, and `TextBinding` interfaces\n * from `./bindings` (their names do not collide with ambient globals); never\n * widen the import to a wildcard or to the plain `*Binding` interfaces.\n */\ninterface BindingTypeMap<TBinding> {\n ai: TBinding extends TypedAiBinding<infer T> ? Ai<T> : Ai;\n json: TBinding extends JsonBinding<infer T> ? T : never;\n kv: TBinding extends TypedKvBinding<infer T> ? KVNamespace<T> : KVNamespace;\n pipeline: TBinding extends TypedPipelineBinding<infer T> ? Pipeline<T> : Pipeline;\n queue: TBinding extends TypedQueueBinding<infer T> ? Queue<T> : Queue;\n text: TBinding extends TextBinding<infer T> ? T : never;\n \"agent-memory\": AgentMemoryNamespace;\n \"ai-search\": AiSearchInstance;\n \"ai-search-namespace\": AiSearchNamespace;\n \"analytics-engine-dataset\": AnalyticsEngineDataset;\n artifacts: Artifacts;\n assets: Fetcher;\n browser: BrowserRun;\n d1: D1Database;\n \"dispatch-namespace\": DispatchNamespace;\n \"durable-object\": DurableObjectNamespace;\n flagship: Flagship;\n hyperdrive: Hyperdrive;\n images: ImagesBinding;\n logfwdr: any;\n media: MediaBinding;\n \"mtls-certificate\": Fetcher;\n \"rate-limit\": RateLimit;\n r2: R2Bucket;\n secret: string;\n \"secrets-store-secret\": SecretsStoreSecret;\n \"send-email\": SendEmail;\n stream: StreamBinding;\n vectorize: VectorizeIndex;\n \"version-metadata\": WorkerVersionMetadata;\n \"vpc-service\": Fetcher;\n \"vpc-network\": Fetcher;\n worker: Fetcher;\n \"worker-loader\": WorkerLoader;\n workflow: Workflow;\n}\ntype SelectedWorkerExportName<TBinding> = TBinding extends {\n exportName?: infer TExportName;\n} ? TExportName extends string ? TExportName : \"default\" : \"default\";\ntype InferBindingType<TBinding> = TBinding extends {\n type: \"worker\";\n worker: infer TWorker extends WorkerReference;\n} ? TWorker extends string ? Fetcher : InferMainModule<UnwrapConfig<TWorker>> extends infer TModule extends WorkerModule ? SelectedWorkerExportName<TBinding> extends infer TExportName ? TExportName extends keyof TModule ? TModule[TExportName] extends Constructor<any> ? Fetcher<ExtractInstance<TModule[TExportName], Rpc.WorkerEntrypointBranded>> : Fetcher : never : never : never : TBinding extends {\n type: \"durable-object\";\n worker: infer TWorker extends WorkerReference;\n exportName: infer TExportName extends string;\n} ? TWorker extends string ? DurableObjectNamespace : InferMainModule<UnwrapConfig<TWorker>> extends infer TModule extends WorkerModule ? TExportName extends keyof TModule ? DurableObjectNamespace<ExtractInstance<TModule[TExportName], Rpc.DurableObjectBranded>> : never : never : TBinding extends {\n type: \"workflow\";\n worker: infer TWorker extends WorkerReference;\n exportName: infer TExportName extends string;\n} ? TWorker extends string ? Workflow : InferMainModule<UnwrapConfig<TWorker>> extends infer TModule extends WorkerModule ? TExportName extends keyof TModule ? ExtractInstance<TModule[TExportName], Rpc.WorkflowEntrypointBranded> extends infer TWorkflow ? TWorkflow extends {\n run(event: {\n payload: infer P;\n }, step: any): any;\n} ? Workflow<P> : Workflow : Workflow : never : never : TBinding extends {\n type: `unsafe:${string}`;\n} ? any : TBinding extends {\n type: infer K extends keyof BindingTypeMap<TBinding>;\n} ? BindingTypeMap<TBinding>[K] : never;\n/**\n * Infer export names from a config's exports, optionally filtered by type.\n * When TExportType is `string` (default), returns all export names.\n * When TExportType is a specific literal like `\"durable-object\"` or `\"workflow\"`,\n * returns only exports of that type.\n */\ntype InferExportsByType<TUnwrappedConfig, TExportType extends string = string> = TUnwrappedConfig extends {\n exports: infer TExports extends Record<string, {\n type: string;\n }>;\n} ? { [K in keyof TExports]: TExports[K] extends {\n type: TExportType;\n} ? K & string : never }[keyof TExports] : never;\n/**\n * Infer `WorkerEntrypoint` export names from a config.\n * Returns named module exports that are not declared as type `\"durable-object\"` or `\"workflow\"` in `exports`.\n * Excludes `\"default\"` since `exportName` should only be provided for named exports.\n */\ntype InferWorkerEntrypointExports<TUnwrappedConfig> = Exclude<keyof InferMainModule<TUnwrappedConfig> & string, \"default\" | InferExportsByType<TUnwrappedConfig, \"durable-object\" | \"workflow\">>;\n/**\n * Unwrap function and promise types to get the underlying config.\n * Use this to normalize a config before passing it to other inference utilities.\n */\ntype UnwrapConfig<TConfig> = TConfig extends ((...args: any[]) => infer TReturn) ? UnwrapConfig<TReturn> : TConfig extends Promise<infer TCompletion> ? UnwrapConfig<TCompletion> : TConfig;\n/**\n * Infer the `Env` interface type from a Worker config.\n *\n * Transforms a config object's `env` bindings into their\n * corresponding Cloudflare runtime types.\n *\n * @example\n * ```typescript\n * import { defineWorker, bindings } from \"@cloudflare/config\";\n * import type { InferEnv, UnwrapConfig } from \"@cloudflare/config\";\n *\n * const config = defineWorker({\n * env: {\n * MY_JSON: bindings.json({ id: string }),\n * MY_KV: bindings.kv(),\n * },\n * });\n *\n * type WorkerConfig = UnwrapConfig<typeof config>;\n * // Inferred as: { MY_JSON: { id: string }; MY_KV: KVNamespace }\n * export type Env = InferEnv<WorkerConfig>;\n * ```\n */\ntype InferEnv<TUnwrappedConfig> = TUnwrappedConfig extends {\n env: infer TEnv extends Record<string, any>;\n} ? { [K in keyof TEnv]: InferBindingType<TEnv[K]> } : never;\n/**\n * Infer the Durable Object namespace names from a Worker config's exports.\n * Returns a union of export names that declare a *live* Durable Object —\n * `type: \"durable-object\"` with `state` either omitted, `\"created\"`, or\n * `\"expecting-transfer\"`. Tombstone entries (`deleted`, `renamed`,\n * `transferred`) are excluded because they retire the namespace and a\n * binding to a tombstoned class would fail at deploy time.\n *\n * @example\n * ```typescript\n * import { defineWorker } from \"@cloudflare/config\";\n * import type { InferDurableNamespaces, UnwrapConfig } from \"@cloudflare/config\";\n *\n * const config = defineWorker({\n * exports: {\n * MyDurableObject: { type: \"durable-object\", storage: \"sqlite\" },\n * OldGone: { type: \"durable-object\", state: \"deleted\" },\n * },\n * });\n *\n * type WorkerConfig = UnwrapConfig<typeof config>;\n * // Inferred as: \"MyDurableObject\" (the deleted tombstone is excluded)\n * type DurableNamespaces = InferDurableNamespaces<WorkerConfig>;\n * ```\n */\ntype InferDurableNamespaces<TUnwrappedConfig> = TUnwrappedConfig extends {\n exports: infer TExports extends Record<string, {\n type: string;\n }>;\n} ? { [K in keyof TExports]: TExports[K] extends {\n type: \"durable-object\";\n} ? TExports[K] extends {\n state: \"deleted\" | \"renamed\" | \"transferred\";\n} ? never : K & string : never }[keyof TExports] : never;\n/**\n * Infer the main module type from a Worker config's entrypoint.\n * If entrypoint is a module namespace object, returns that type.\n * If entrypoint is a `string` or not present, returns `DefaultModule` as a fallback.\n */\ntype InferMainModule<TUnwrappedConfig> = TUnwrappedConfig extends {\n entrypoint: infer TModule extends WorkerModule;\n} ? TModule : DefaultModule;\n//#endregion\n//#region src/triggers.d.ts\ninterface FetchTriggerOptions {\n /**\n * A route that your Worker should be published to.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#types-of-routes\n */\n pattern: string;\n /**\n * The DNS zone the pattern is attached to. Required when the\n * pattern is ambiguous.\n */\n zone?: string;\n}\n/**\n * Fetch trigger — a route that your Worker should be published to.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#types-of-routes\n */\ninterface FetchTrigger extends FetchTriggerOptions {\n type: \"fetch\";\n}\ninterface QueueConsumerTriggerOptions {\n /** The name of the queue from which this consumer should consume. */\n name: string;\n /** The queue to send messages that failed to be consumed. */\n deadLetterQueue?: string;\n /** The maximum number of messages per batch. */\n maxBatchSize?: number;\n /** The maximum number of seconds to wait to fill a batch with messages. */\n maxBatchTimeout?: number;\n /**\n * The maximum number of concurrent consumer Worker invocations.\n * Leaving this unset will allow your consumer to scale to the\n * maximum concurrency needed to keep up with the message backlog.\n */\n maxConcurrency?: number | null;\n /** The maximum number of retries for each message. */\n maxRetries?: number;\n /** The number of seconds to wait before retrying a message. */\n retryDelay?: number;\n /** The number of milliseconds to wait for pulled messages to become visible again. */\n visibilityTimeoutMs?: number;\n}\n/**\n * Queue consumer trigger — invokes this Worker when messages arrive on the\n * named queue.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#queues\n */\ninterface QueueConsumerTrigger extends QueueConsumerTriggerOptions {\n type: \"queue\";\n}\ninterface ScheduledTriggerOptions {\n /**\n * A \"cron\" definition to trigger a Worker's \"scheduled\" function.\n *\n * Lets you call Workers periodically, much like a cron job.\n *\n * More details here https://developers.cloudflare.com/workers/platform/cron-triggers\n */\n schedule: string;\n}\n/**\n * Scheduled (cron) trigger — invokes this Worker on the given schedules.\n *\n * More details here https://developers.cloudflare.com/workers/platform/cron-triggers\n */\ninterface ScheduledTrigger extends ScheduledTriggerOptions {\n type: \"scheduled\";\n}\ninterface EmailTriggerOptions {\n /**\n * Inbound Email Routing addresses handled by this Worker.\n *\n * Each entry is a literal recipient address (e.g. `\"support@example.com\"`)\n * or a `*@domain` catch-all (e.g. `\"*@example.com\"`).\n */\n addresses: string[];\n}\n/**\n * Email trigger — invokes this Worker for the configured Email Routing\n * addresses.\n */\ninterface EmailTrigger extends EmailTriggerOptions {\n type: \"email\";\n}\ninterface ConnectTriggerOptions {\n /** The transport protocol to listen for. */\n protocol: \"tcp\";\n /** The port to listen on. */\n port: number;\n /** The address to bind to. Defaults to `127.0.0.1`. */\n address?: string;\n}\n/**\n * Connect trigger — invokes this Worker's `connect(socket, env, ctx)`\n * handler for raw socket connections received on the configured\n * protocol/port.\n */\ninterface ConnectTrigger extends ConnectTriggerOptions {\n type: \"connect\";\n}\n/**\n * Event triggers — fetch routes, queue consumers, cron schedules, Email\n * Routing addresses, and raw sockets — that invoke this Worker.\n * Construct entries with `triggers.fetch(...)`, `triggers.queue(...)`,\n * `triggers.scheduled(...)`, `triggers.email(...)`, or `triggers.connect(...)`.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#triggers\n */\ninterface Triggers {\n /**\n * Fetch trigger — a route that your Worker should be published to.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#types-of-routes\n */\n fetch(options: FetchTriggerOptions): FetchTrigger;\n /**\n * Queue consumer trigger — invokes this Worker when messages arrive on the\n * named queue.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#queues\n */\n queue(options: QueueConsumerTriggerOptions): QueueConsumerTrigger;\n /**\n * Scheduled (cron) trigger — invokes this Worker on the given schedules.\n *\n * More details here https://developers.cloudflare.com/workers/platform/cron-triggers\n */\n scheduled(options: ScheduledTriggerOptions): ScheduledTrigger;\n /**\n * Email trigger — invokes this Worker for the configured Email Routing\n * addresses.\n */\n email(options: EmailTriggerOptions): EmailTrigger;\n /**\n * Connect trigger — invokes this Worker's `connect(socket, env, ctx)`\n * handler for raw socket connections received on the configured\n * protocol/port.\n */\n connect(options: ConnectTriggerOptions): ConnectTrigger;\n}\n/**\n * Triggers builder for configuring event triggers.\n *\n * @example\n * ```typescript\n * import { defineConfig, triggers } from \"@cloudflare/config\";\n *\n * export default defineConfig({\n * worker: {\n * name: \"my-worker\",\n * compatibilityDate: \"2026-09-17\",\n * triggers: [\n * triggers.fetch({ pattern: \"example.com/*\", zone: \"example.com\" }),\n * triggers.queue({ name: \"my-queue\" }),\n * triggers.scheduled({ schedule: \"0 * * * *\" }),\n * triggers.scheduled({ schedule: \"30 0 * * *\" }),\n * triggers.email({ addresses: [\"support@example.com\"] }),\n * triggers.connect({ protocol: \"tcp\", port: 5432 }),\n * ],\n * },\n * });\n * ```\n */\ndeclare const triggers: Triggers;\n//#endregion\n//#region src/types.d.ts\n/** Account-level values shared by the resources in a configuration. */\ninterface Settings {\n /**\n * This is the ID of the account associated with your zone. It can also be\n * specified through the `CLOUDFLARE_ACCOUNT_ID` environment variable.\n */\n accountId?: string;\n /**\n * The compliance boundary in which commands should operate. When omitted,\n * this can be supplied through `CLOUDFLARE_COMPLIANCE_REGION`.\n */\n complianceRegion?: \"public\" | \"fedramp-high\";\n}\n/** The authored shape of `cloudflare.config.ts`'s default export. */\ninterface CloudflareConfig extends Settings {\n /** The Worker defined by this configuration. */\n worker?: ConfigInput<WorkerConfig>;\n /** Container applications defined by this configuration. */\n containers?: ConfigInput<ContainerConfig>[];\n}\n/**\n * Union of all binding definitions accepted in `env`.\n */\ntype 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;\n/**\n * Union of all trigger definitions accepted in `triggers`.\n */\ntype Trigger = ConnectTrigger | EmailTrigger | FetchTrigger | QueueConsumerTrigger | ScheduledTrigger;\n/**\n * Union of all export definitions accepted in `exports`. Worker entries\n * configure WorkerEntrypoint exports. Durable Object entries configure live\n * classes and tombstone lifecycle operations.\n */\ntype Export = DurableObjectCreatedExport | DurableObjectDeletedExport | DurableObjectRenamedExport | DurableObjectTransferredExport | DurableObjectExpectingTransferExport | WorkerEntrypointExport;\n/** An image source accepted in an authored Container configuration. */\ntype ContainerImage = {\n /** The path to a Dockerfile. */\n dockerfile: string;\n /**\n * Build context of the application.\n *\n * @default The directory containing `dockerfile`.\n */\n buildContext?: string;\n /** Image variables available to the image at build time only. */\n buildVars?: Record<string, string>;\n} | {\n /**\n * Reference to an existing image.\n *\n * For supported registries, refer to\n * https://developers.cloudflare.com/containers/guides/image-management/#use-pre-built-container-images\n */\n reference: string;\n};\n/** Application-wide observability settings shared by all Containers. */\ninterface ContainerObservabilityConfig {\n /** Whether observability is enabled. */\n enabled?: boolean;\n logs?: {\n /** Whether log collection is enabled. */\n enabled?: boolean;\n };\n}\n/** Observability settings for a standard Container application. */\ntype StandardContainerObservabilityConfig = ContainerObservabilityConfig & ({\n /** Percentage of Container instances targeted for observability. */\n targetInstancePercentage?: number;\n targetInstanceCount?: never;\n} | {\n targetInstancePercentage?: never;\n /** Number of Container instances targeted for observability. */\n targetInstanceCount?: number;\n});\n/** Fields shared by all Container application configurations. */\ninterface BaseContainerConfig {\n /**\n * Name of the application.\n *\n * This is also the identifier used to reference the Container from a Durable\n * Object's `exports` entry via its `container` field.\n */\n name: string;\n /**\n * Passed through without client-side validation or transformation.\n *\n * @hidden\n */\n unsafe?: Record<string, unknown>;\n}\n/** A Container application managed with a standard scheduling policy. */\ninterface StandardContainerConfig extends BaseContainerConfig {\n /** Configures observability and optional targeting for Container instances. */\n observability?: StandardContainerObservabilityConfig;\n /** The image to build or deploy. */\n image: ContainerImage;\n /**\n * Maximum number of application instances.\n *\n * @default 20\n */\n maxInstances?: number;\n /**\n * The instance type to be used for the Container.\n * Select from one of the following named instance types:\n *\n * - lite: 1/16 vCPU, 256 MiB memory, and 2 GB disk\n * - basic: 1/4 vCPU, 1 GiB memory, and 4 GB disk\n * - standard-1: 1/2 vCPU, 4 GiB memory, and 8 GB disk\n * - standard-2: 1 vCPU, 6 GiB memory, and 12 GB disk\n * - standard-3: 2 vCPU, 8 GiB memory, and 16 GB disk\n * - standard-4: 4 vCPU, 12 GiB memory, and 20 GB disk\n *\n * Customers on an enterprise plan have the additional option to set custom\n * limits.\n *\n * @default \"lite\"\n */\n instanceType?: \"basic\" | \"lite\" | \"standard-1\" | \"standard-2\" | \"standard-3\" | \"standard-4\" | {\n /** @default 0.0625 (1/16 vCPU) */\n vcpu?: number;\n /** @default 256 MiB */\n memoryMib?: number;\n /** @default 2 GB */\n diskMb?: number;\n };\n /**\n * The scheduling policy of the application.\n *\n * @default \"default\"\n */\n schedulingPolicy?: \"default\" | \"regional\";\n ssh?: {\n /**\n * If enabled, users with write access to the Container application can\n * connect to it over SSH.\n *\n * @default false\n */\n enabled: boolean;\n /**\n * Port that the SSH service is running on.\n *\n * @default 22\n */\n port?: number;\n };\n /** SSH public keys to put in the Container's authorized_keys file. */\n authorizedKeys?: Array<{\n name: string;\n publicKey: string;\n }>;\n /** Scheduling constraints for Container placement. */\n constraints?: {\n /** Limit Container placement to specific geographic regions. */\n regions?: Array<\"ENAM\" | \"WNAM\" | \"EEUR\" | \"WEUR\" | \"APAC\" | \"SAM\" | \"ME\" | \"OC\" | \"AFR\">;\n /** Restrict Containers to compliance boundaries. */\n jurisdiction?: \"eu\" | \"fedramp\";\n };\n rollout?: {\n /**\n * How a rollout should be created. It supports the following modes:\n *\n * - full-auto: The Container application will be rolled out fully\n * automatically.\n * - none: The Container application will not have a rollout or update.\n * - full-manual: The Container application will be rolled out by manually\n * progressing through the rollout steps.\n *\n * @default \"full-auto\"\n * @hidden\n */\n kind?: \"full-auto\" | \"none\" | \"full-manual\";\n /**\n * Configures what percentage of instances should be updated at each step of\n * a rollout. You can specify this as a single number or an array of numbers.\n *\n * If this is a single number, each step will progress by that percentage.\n * The options are 5, 10, 20, 25, 50, or 100.\n *\n * If this is an array, each step specifies the cumulative rollout progress.\n * The final step must be 100.\n *\n * @default [10, 100]\n */\n stepPercentage?: number | number[];\n /**\n * Configures the grace period, in seconds, for active instances before they\n * are shut down during a rollout.\n *\n * @default 0\n */\n activeGracePeriod?: number;\n };\n}\n/** A Container application managed by a Durable Object. */\ninterface DurableObjectContainerConfig extends BaseContainerConfig {\n schedulingPolicy: \"durable-object\";\n /**\n * Configures application-wide observability. Instance targeting is not\n * supported for Durable Object-managed Containers.\n */\n observability?: ContainerObservabilityConfig;\n /** Named images that the Durable Object can start. */\n images?: Record<string, ContainerImage>;\n}\n/**\n * Container application configuration. This is the input shape passed to\n * `defineContainer` and parsed at runtime by `InputContainerSchema`.\n */\ntype ContainerConfig = DurableObjectContainerConfig | StandardContainerConfig;\n/**\n * Worker configuration. This is the input shape passed to\n * [`defineWorker`](https://developers.cloudflare.com/workers/wrangler/configuration/).\n *\n * Fields are parsed and normalised at runtime by `InputWorkerSchema` before\n * being passed to downstream tooling.\n */\ninterface WorkerConfig {\n /**\n * The name of your Worker.\n */\n name: string;\n /**\n * A date in the form yyyy-mm-dd, which will be used to determine\n * which version of the Workers runtime is used.\n *\n * More details at https://developers.cloudflare.com/workers/configuration/compatibility-dates\n */\n compatibilityDate: string;\n /**\n * A list of flags that enable features from upcoming features of\n * the Workers runtime, usually used together with `compatibilityDate`.\n *\n * More details at https://developers.cloudflare.com/workers/configuration/compatibility-flags/\n *\n * @default []\n */\n compatibilityFlags?: string[];\n /**\n * The entrypoint module that will be executed.\n *\n * May be either a path string (e.g. `\"./src/index.ts\"`) or a module\n * namespace imported with the `cf-worker` import attribute.\n *\n * @example\n * ```ts\n * import { defineConfig, defineWorker } from \"@cloudflare/config\";\n * import * as entrypoint from \"./src\" with { type: \"cf-worker\" };\n * const worker = defineWorker({ entrypoint });\n * export default defineConfig({ worker });\n * ```\n */\n entrypoint?: string | WorkerModule;\n /**\n * Specify the directory of static assets to deploy/serve.\n *\n * More details at https://developers.cloudflare.com/workers/frameworks/\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#assets\n */\n assets?: {\n /** How to handle HTML requests. */\n htmlHandling?: \"auto-trailing-slash\" | \"drop-trailing-slash\" | \"force-trailing-slash\" | \"none\";\n /** How to handle requests that do not match an asset. */\n notFoundHandling?: \"single-page-application\" | \"404-page\" | \"none\";\n /**\n * Matches will be routed to the User Worker, and matches to negative rules will go to the Asset Worker.\n *\n * Can also be `true`, indicating that every request should be routed to the User Worker.\n */\n runWorkerFirst?: string[] | boolean;\n };\n /**\n * Custom domains that your Worker should be published to.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#types-of-routes\n */\n domains?: string[];\n /**\n * Event triggers — fetch routes, queue consumers, cron schedules, Email\n * Routing addresses, and raw sockets — that invoke this Worker.\n * Construct entries with `triggers.fetch(...)`, `triggers.queue(...)`,\n * `triggers.scheduled(...)`, `triggers.email(...)`, or\n * `triggers.connect(...)`.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#triggers\n */\n triggers?: Trigger[];\n /**\n * A list of Tail Workers that are bound to this Worker.\n *\n * `@cloudflare/config` unifies regular and streaming tail consumers under\n * a single field; pass `streaming: true` to forward streaming tail events.\n *\n * @default []\n */\n tailConsumers?: Array<{\n /** The name of the service tail events will be forwarded to. */\n worker: string;\n /** Whether to stream tail events in real time. */\n streaming?: boolean;\n }>;\n /**\n * Specify the cache behavior of the Worker.\n */\n cache?: {\n /** If cache is enabled for this Worker. */\n enabled: boolean;\n /** Whether cached assets may be reused across Worker versions. */\n crossVersionCache?: boolean;\n };\n /**\n * Specify how the Worker should be located to minimize round-trip time.\n *\n * More details: https://developers.cloudflare.com/workers/platform/smart-placement/\n */\n placement?: {\n mode: \"off\" | \"smart\";\n hint?: string;\n } | {\n mode?: \"targeted\";\n region: string;\n } | {\n mode?: \"targeted\";\n host: string;\n } | {\n mode?: \"targeted\";\n hostname: string;\n };\n /**\n * Specify limits for runtime behavior.\n * Only supported for the \"standard\" Usage Model.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#limits\n */\n limits?: {\n /** Maximum allowed CPU time for a Worker's invocation in milliseconds. */\n cpuMs?: number;\n /** Maximum allowed number of fetch requests that a Worker's invocation can execute. */\n subrequests?: number;\n };\n /**\n * Send Trace Events from this Worker to Workers Logpush.\n *\n * This will not configure a corresponding Logpush job automatically.\n *\n * For more information about Workers Logpush, see:\n * https://blog.cloudflare.com/logpush-for-workers/\n */\n logpush?: boolean;\n /**\n * Specify the observability behavior of the Worker.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#observability\n */\n observability?: {\n /** If observability is enabled for this Worker. */\n enabled?: boolean;\n /** The sampling rate. */\n headSamplingRate?: number;\n /**\n * Whether query strings are removed from request URLs in logs and traces.\n *\n * @default false\n */\n redactQueryString?: boolean;\n /** Real-time Issues settings for this Worker. */\n issues?: {\n /** Whether real-time Issues are enabled. */\n enabled?: boolean;\n };\n logs?: {\n enabled?: boolean;\n /** The sampling rate. */\n headSamplingRate?: number;\n /** Set to false to disable invocation logs. */\n invocationLogs?: boolean;\n /**\n * If logs should be persisted to the Cloudflare observability platform where they can be queried in the dashboard.\n *\n * @default true\n */\n persist?: boolean;\n /**\n * What destinations logs emitted from the Worker should be sent to.\n *\n * @default []\n */\n destinations?: string[];\n };\n traces?: {\n enabled?: boolean;\n /** The sampling rate. */\n headSamplingRate?: number;\n /**\n * If traces should be persisted to the Cloudflare observability platform where they can be queried in the dashboard.\n *\n * @default true\n */\n persist?: boolean;\n /**\n * What destinations traces emitted from the Worker should be sent to.\n *\n * @default []\n */\n destinations?: string[];\n };\n };\n /**\n * Whether we use `<name>.<subdomain>.workers.dev` to\n * test and deploy your Worker.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#workersdev\n *\n * @default true\n */\n workersDev?: boolean;\n /**\n * Whether we use `<version>-<name>.<subdomain>.workers.dev` to\n * serve Preview URLs for your Worker.\n *\n * @default false\n */\n previewUrls?: boolean;\n /**\n * Designates this Worker as an internal-only \"first-party\" Worker.\n *\n * @internal\n */\n firstPartyWorker?: boolean;\n /**\n * \"Unsafe\" tables for runtime features that aren't directly supported by\n * this configuration. Values are forwarded verbatim in the Worker's\n * upload metadata.\n *\n * @default {}\n */\n unsafe?: {\n /**\n * Arbitrary key/value pairs that will be included in the uploaded metadata. Values specified\n * here will always be applied to metadata last, so can add new or override existing fields.\n */\n metadata?: Record<string, unknown>;\n /**\n * Used for internal capnp uploads for the Workers runtime.\n */\n capnp?: {\n basePath: string;\n sourceSchemas: string[];\n compiledSchema?: never;\n } | {\n basePath?: never;\n sourceSchemas?: never;\n compiledSchema: string;\n };\n };\n /**\n * Bindings exposed on the Worker's `env` object. Construct entries with\n * `bindings.kv(...)`, `bindings.r2(...)`, etc.\n */\n env?: Record<string, Binding>;\n /**\n * Configuration for named exports declared by the Worker. Each entry's\n * key is the exported class name; the value configures the export.\n *\n * Only one export kind is currently supported:\n *\n * - Construct entries with `exports.durableObject(...)`.\n * - Declares Durable Object classes exported from this Worker.\n * For more information about Durable Objects, see the documentation at\n * https://developers.cloudflare.com/workers/learning/using-durable-objects.\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#durable-objects.\n */\n exports?: Record<string, Export>;\n}\n//#endregion\n//#region src/definition.d.ts\ninterface ConfigContext {\n /** Whether the config is being evaluated for a Preview build. */\n isPreview: boolean;\n /**\n * The mode the config is being evaluated in.\n * Set via the `--mode` CLI flag.\n * In Vite the mode defaults to `development` in `vite dev` and `production` in `vite build` ([more info](https://vite.dev/guide/env-and-mode.html#modes)).\n * In Wrangler the mode defaults to `undefined`.\n */\n mode: string | undefined;\n}\n/**\n * A configuration value, promise, or factory. Factories can be passed directly\n * for automatic resolution with the current context or called explicitly with\n * another context before they are used.\n */\ntype ConfigInput<T$1> = T$1 | Promise<T$1> | ((ctx: ConfigContext) => T$1 | Promise<T$1>);\ntype ContainerDefinition<T$1 extends ContainerConfig = ContainerConfig> = ConfigInput<T$1>;\ntype WorkerDefinition<T$1 extends WorkerConfig = WorkerConfig> = ConfigInput<T$1>;\n/** A Worker name, value, promise, or context-aware factory. */\ntype WorkerReference = string | WorkerDefinition;\n/**\n * Used to define the default export in `cloudflare.config.ts`.\n *\n * @example\n * ```typescript\n * import { defineConfig } from \"@cloudflare/config\";\n *\n * export default defineConfig({\n * worker: {\n * name: \"my-worker\",\n * compatibilityDate: \"2026-09-17\",\n * },\n * });\n * ```\n */\ndeclare const defineConfig: <const TInput extends ConfigInput<CloudflareConfig>>(config: TInput) => TInput;\n/**\n * Define a Container.\n *\n * @example\n * ```typescript\n * import { defineContainer } from \"@cloudflare/config\";\n *\n * const container = defineContainer({\n * name: \"my-container\",\n * image: { dockerfile: \"./Dockerfile\" },\n * });\n * ```\n */\ndeclare const defineContainer: <const TInput extends ConfigInput<ContainerConfig>>(config: TInput) => TInput;\n/**\n * Define a Worker.\n *\n * @example\n * ```typescript\n * import { defineWorker } from \"@cloudflare/config\";\n *\n * const worker = defineWorker({\n * name: \"my-worker\",\n * compatibilityDate: \"2026-09-17\",\n * });\n * ```\n */\ndeclare const defineWorker: <const TInput extends ConfigInput<WorkerConfig>>(config: TInput) => TInput;\n//#endregion\n//#region src/utils.d.ts\n/**\n * Represents any valid JSON value.\n */\ntype Json = string | number | boolean | null | Json[] | {\n [key: string]: Json;\n};\n//#endregion\n//#region src/bindings.d.ts\n/** Options that control a binding during local development. */\ninterface BindingDevOptions {\n /** Whether the binding should connect to the remote resource. */\n remote?: boolean;\n}\ninterface AgentMemoryBindingOptions {\n /** The user-chosen namespace name. Must exist in Cloudflare at deploy time. */\n namespace: string;\n /** Options that only apply during local development. */\n dev?: BindingDevOptions;\n}\n/**\n * Agent Memory namespace binding. Each binding is scoped to a namespace and\n * allows agents to persist and recall memory.\n */\ninterface AgentMemoryBinding extends AgentMemoryBindingOptions {\n type: \"agent-memory\";\n}\ninterface AiBindingOptions {\n /** Options that only apply during local development. */\n dev?: BindingDevOptions;\n}\n/**\n * Binding to the Workers AI project.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#workers-ai\n */\ninterface AiBinding extends AiBindingOptions {\n type: \"ai\";\n}\n/**\n * Binding to the Workers AI project.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#workers-ai\n */\ninterface TypedAiBinding<TAiModelList extends AiModelListType = AiModels> extends AiBinding {\n /** @internal Carries type parameters for inference */\n __typeParams: [TAiModelList];\n}\ninterface AiSearchBindingOptions {\n /** The user-chosen instance name. Must exist in Cloudflare at deploy time. */\n name: string;\n /** Options that only apply during local development. */\n dev?: BindingDevOptions;\n}\n/**\n * AI Search instance binding. Each binding is bound directly to a single\n * pre-existing instance within the \"default\" namespace.\n */\ninterface AiSearchBinding extends AiSearchBindingOptions {\n type: \"ai-search\";\n}\ninterface AiSearchNamespaceBindingOptions {\n /** The user-chosen namespace name. Must exist in Cloudflare at deploy time. */\n namespace: string;\n /** Options that only apply during local development. */\n dev?: BindingDevOptions;\n}\n/**\n * AI Search namespace binding. Each binding is scoped to a namespace and\n * allows dynamic instance CRUD within it.\n */\ninterface AiSearchNamespaceBinding extends AiSearchNamespaceBindingOptions {\n type: \"ai-search-namespace\";\n}\ninterface AnalyticsEngineDatasetBindingOptions {\n /** The name of this dataset to write to. */\n name?: string;\n}\n/**\n * Binding to an Analytics Engine dataset.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#analytics-engine-datasets\n */\ninterface AnalyticsEngineDatasetBinding extends AnalyticsEngineDatasetBindingOptions {\n type: \"analytics-engine-dataset\";\n}\ninterface ArtifactsBindingOptions {\n /** The namespace to use. */\n namespace: string;\n /** Options that only apply during local development. */\n dev?: BindingDevOptions;\n}\n/**\n * Binding to an Artifacts instance. Artifacts provides git-compatible file\n * storage on Cloudflare Workers.\n */\ninterface ArtifactsBinding extends ArtifactsBindingOptions {\n type: \"artifacts\";\n}\n/**\n * Binding to the Worker's static assets.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#assets\n */\ninterface AssetsBinding {\n type: \"assets\";\n}\ninterface BrowserBindingOptions {\n /** Options that only apply during local development. */\n dev?: BindingDevOptions;\n}\n/**\n * Binding to a headless browser usable from the Worker.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#browser-rendering\n */\ninterface BrowserBinding extends BrowserBindingOptions {\n type: \"browser\";\n}\ninterface D1BindingOptions {\n /** The UUID of this D1 database (not required). */\n id?: string;\n /** The name of this D1 database. */\n name?: string;\n /** Options that only apply during local development. */\n dev?: BindingDevOptions;\n}\n/**\n * Binding to a D1 database.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#d1-databases\n */\ninterface D1Binding extends D1BindingOptions {\n type: \"d1\";\n}\ninterface DispatchNamespaceBindingOptions {\n /** The namespace to bind to. */\n namespace?: string;\n /** Details about the outbound Worker which will handle outbound requests from your namespace. */\n outbound?: {\n /** Name of the Worker handling the outbound requests. */\n worker: string;\n /** (Optional) List of parameter names, for sending context from your dispatch Worker to the outbound handler. */\n parameters?: string[];\n };\n /** Options that only apply during local development. */\n dev?: BindingDevOptions;\n}\n/**\n * Binding to a Workers for Platforms dispatch namespace.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#dispatch-namespace-bindings-workers-for-platforms\n */\ninterface DispatchNamespaceBinding extends DispatchNamespaceBindingOptions {\n type: \"dispatch-namespace\";\n}\ntype ReferencedWorkerConfig<TWorker$1 extends WorkerReference> = TWorker$1 extends string ? never : UnwrapConfig<TWorker$1>;\ntype DurableObjectExportName<TWorker$1 extends WorkerReference> = TWorker$1 extends string ? string : InferDurableNamespaces<ReferencedWorkerConfig<TWorker$1>>;\ntype WorkerEntrypointExportName<TWorker$1 extends WorkerReference> = TWorker$1 extends string ? string : InferWorkerEntrypointExports<ReferencedWorkerConfig<TWorker$1>>;\ntype WorkflowExportName<TWorker$1 extends WorkerReference> = TWorker$1 extends string ? string : InferExportsByType<ReferencedWorkerConfig<TWorker$1>, \"workflow\">;\ninterface DurableObjectBindingOptions<TWorker$1 extends WorkerReference = WorkerReference, TExportName$1 extends DurableObjectExportName<TWorker$1> = DurableObjectExportName<TWorker$1>> {\n /** The name or config of the Worker that defines the Durable Object class. */\n worker: TWorker$1;\n /** The exported class name of the Durable Object. */\n exportName: TExportName$1;\n}\n/**\n * Binding to a Durable Object class. `worker` is the name or config of the\n * Worker that defines the class; `exportName` is the exported class name.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#durable-objects\n */\ninterface DurableObjectBinding<TWorker$1 extends WorkerReference = WorkerReference, TExportName$1 extends DurableObjectExportName<TWorker$1> = DurableObjectExportName<TWorker$1>> extends DurableObjectBindingOptions<TWorker$1, TExportName$1> {\n type: \"durable-object\";\n}\ninterface FlagshipBindingOptions {\n /** The Flagship app ID to bind to. */\n id?: string;\n /** Options that only apply during local development. */\n dev?: BindingDevOptions;\n}\n/** Binding to a Flagship feature-flag service. */\ninterface FlagshipBinding extends FlagshipBindingOptions {\n type: \"flagship\";\n}\ninterface HyperdriveBindingOptions {\n /** The ID of the Hyperdrive configuration. */\n id: string;\n /** Options that only apply during local development. */\n dev?: {\n /** The database connection string used during local development. */\n connectionString?: string;\n };\n}\n/**\n * Binding to a Hyperdrive configuration.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#hyperdrive\n */\ninterface HyperdriveBinding extends HyperdriveBindingOptions {\n type: \"hyperdrive\";\n}\ninterface ImagesBindingOptions {\n /** Options that only apply during local development. */\n dev?: BindingDevOptions;\n}\n/**\n * Binding to Cloudflare Images.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#images\n */\ninterface ImagesBinding$1 extends ImagesBindingOptions {\n type: \"images\";\n}\n/**\n * Inline JSON value made available to the Worker on `env` under the\n * binding name.\n */\ninterface JsonBinding<T$1 extends Json = Json> {\n type: \"json\";\n /** The JSON value made available to the Worker. */\n value: T$1;\n}\ninterface KvBindingOptions {\n /** The ID of the KV namespace. */\n id?: string;\n /** Options that only apply during local development. */\n dev?: BindingDevOptions;\n}\n/**\n * Binding to a Workers KV namespace.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#kv-namespaces\n */\ninterface KvBinding extends KvBindingOptions {\n type: \"kv\";\n}\n/**\n * Binding to a Workers KV namespace.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#kv-namespaces\n */\ninterface TypedKvBinding<TKey extends string = string> extends KvBinding {\n /** @internal Carries type parameters for inference */\n __typeParams: [TKey];\n}\ninterface LogfwdrBindingOptions {\n /** The destination for this logged message. */\n destination: string;\n}\n/** Binding for forwarding logs to logfwdr. */\ninterface LogfwdrBinding extends LogfwdrBindingOptions {\n type: \"logfwdr\";\n}\ninterface MediaBindingOptions {\n /** Options that only apply during local development. */\n dev?: BindingDevOptions;\n}\n/** Binding to Cloudflare Media Transformations. */\ninterface MediaBinding$1 extends MediaBindingOptions {\n type: \"media\";\n}\ninterface MtlsCertificateBindingOptions {\n /** The UUID of the uploaded mTLS certificate. */\n id: string;\n /** Options that only apply during local development. */\n dev?: BindingDevOptions;\n}\n/**\n * Binding to an uploaded mTLS certificate.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#mtls-certificates\n */\ninterface MtlsCertificateBinding extends MtlsCertificateBindingOptions {\n type: \"mtls-certificate\";\n}\ninterface PipelineBindingOptions {\n /** Name of the Pipeline to bind. */\n name: string;\n /** Options that only apply during local development. */\n dev?: BindingDevOptions;\n}\n/** Binding to a Cloudflare Pipeline. */\ninterface PipelineBinding extends PipelineBindingOptions {\n type: \"pipeline\";\n}\n/** Binding to a Cloudflare Pipeline. */\ninterface TypedPipelineBinding<TRecord extends PipelineRecord = PipelineRecord> extends PipelineBinding {\n /** @internal Carries type parameters for inference */\n __typeParams: [TRecord];\n}\ninterface QueueBindingOptions {\n /** The name of this Queue. */\n name?: string;\n /** The number of seconds to wait before delivering a message. */\n deliveryDelay?: number;\n /** Options that only apply during local development. */\n dev?: BindingDevOptions;\n}\n/**\n * Producer binding to a Cloudflare Queue.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#queues\n */\ninterface QueueBinding extends QueueBindingOptions {\n type: \"queue\";\n}\n/**\n * Producer binding to a Cloudflare Queue.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#queues\n */\ninterface TypedQueueBinding<TBody = unknown> extends QueueBinding {\n /** @internal Carries type parameters for inference */\n __typeParams: [TBody];\n}\ninterface R2BindingOptions {\n /** The name of this R2 bucket at the edge. */\n name?: string;\n /** The jurisdiction that the bucket exists in. Default if not present. */\n jurisdiction?: string;\n /** Settings that only apply to local development. */\n dev?: BindingDevOptions & {\n /** EXPERIMENTAL: credentials for the local S3-compatible endpoint. */\n experimentalS3Credentials?: {\n accessKeyId: string;\n secretAccessKey: string;\n };\n };\n}\n/**\n * Binding to an R2 bucket.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#r2-buckets\n */\ninterface R2Binding extends R2BindingOptions {\n type: \"r2\";\n}\ninterface RateLimitBindingOptions {\n /** The namespace ID for this rate limiter. */\n namespace: string;\n /** Simple rate limiting configuration. */\n simple: {\n /** The maximum number of requests allowed in the time period. */\n limit: number;\n /** The time period in seconds (10 for ten seconds, 60 for one minute). */\n period: 10 | 60;\n };\n}\n/** Binding to a rate limiter. */\ninterface RateLimitBinding extends RateLimitBindingOptions {\n type: \"rate-limit\";\n}\n/**\n * Declares a secret that is required by your Worker, exposed on `env` under\n * the binding name.\n *\n * When defined, this binding:\n * - Replaces .dev.vars/.env/process.env inference for type generation\n * - Enables local dev validation with warnings for missing secrets\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#secrets-configuration-property\n */\ninterface SecretBinding {\n type: \"secret\";\n}\ninterface SecretsStoreSecretBindingOptions {\n /** ID of the secret store. */\n storeId: string;\n /** Name of the secret. */\n secretName: string;\n}\n/** Binding to a Secrets Store secret. */\ninterface SecretsStoreSecretBinding extends SecretsStoreSecretBindingOptions {\n type: \"secrets-store-secret\";\n}\ntype SendEmailDestinationOptions = {\n /** If this binding should be restricted to a specific verified address. */\n destinationAddress: string;\n allowedDestinationAddresses?: never;\n} | {\n destinationAddress?: never;\n /** If this binding should be restricted to a set of verified addresses. */\n allowedDestinationAddresses: string[];\n} | {\n destinationAddress?: never;\n allowedDestinationAddresses?: never;\n};\ntype SendEmailBindingOptions = SendEmailDestinationOptions & {\n /** If this binding should be restricted to a set of sender addresses. */\n allowedSenderAddresses?: string[];\n /** Options that only apply during local development. */\n dev?: BindingDevOptions;\n};\n/**\n * Binding for sending email from inside the Worker.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#email-bindings\n */\ntype SendEmailBinding = SendEmailBindingOptions & {\n type: \"send-email\";\n};\ninterface StreamBindingOptions {\n /** Options that only apply during local development. */\n dev?: BindingDevOptions;\n}\n/** Binding to Cloudflare Stream. */\ninterface StreamBinding$1 extends StreamBindingOptions {\n type: \"stream\";\n}\n/**\n * Inline string value made available to the Worker on `env` under the\n * binding name.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#environment-variables\n */\ninterface TextBinding<T$1 extends string = string> {\n type: \"text\";\n /** The string value made available to the Worker. */\n value: T$1;\n}\ninterface UnsafeBindingOptions {\n /** Local-dev plugin configuration for this unsafe binding. */\n dev?: {\n /** The plugin package that provides the binding's local-dev implementation. */\n plugin: {\n package: string;\n name: string;\n };\n /** Plugin-specific options. */\n options?: Record<string, unknown>;\n };\n [key: string]: unknown;\n}\n/**\n * Escape-hatch binding for runtime features that aren't directly supported\n * by this configuration. Included in the Worker's upload metadata without\n * changes.\n */\ninterface UnsafeBinding extends UnsafeBindingOptions {\n type: `unsafe:${string}`;\n}\ninterface VectorizeBindingOptions {\n /** The name of the Vectorize index. */\n name: string;\n /** Options that only apply during local development. */\n dev?: BindingDevOptions;\n}\n/**\n * Binding to a Vectorize index.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#vectorize-indexes\n */\ninterface VectorizeBinding extends VectorizeBindingOptions {\n type: \"vectorize\";\n}\n/** Binding to the Worker version's metadata. */\ninterface VersionMetadataBinding {\n type: \"version-metadata\";\n}\ntype VpcNetworkBindingOptions = {\n /** The tunnel ID of the Cloudflare Tunnel to route traffic through. Mutually exclusive with `networkId`. */\n tunnelId: string;\n networkId?: never;\n /** Options that only apply during local development. */\n dev?: BindingDevOptions;\n} | {\n tunnelId?: never;\n /** The network ID to route traffic through. Mutually exclusive with `tunnelId`. */\n networkId: string;\n /** Options that only apply during local development. */\n dev?: BindingDevOptions;\n};\n/** Binding to a VPC network. */\ntype VpcNetworkBinding = VpcNetworkBindingOptions & {\n type: \"vpc-network\";\n};\ninterface VpcServiceBindingOptions {\n /** The service ID of the VPC connectivity service. */\n id: string;\n /** Options that only apply during local development. */\n dev?: BindingDevOptions;\n}\n/** Binding to a VPC service. */\ninterface VpcServiceBinding extends VpcServiceBindingOptions {\n type: \"vpc-service\";\n}\ninterface WorkerBindingOptions<TWorker$1 extends WorkerReference = WorkerReference, TExportName$1 extends WorkerEntrypointExportName<TWorker$1> | undefined = WorkerEntrypointExportName<TWorker$1> | undefined> {\n /** The name or config of the bound Worker. */\n worker: TWorker$1;\n /** The named export to bind to (defaults to the default export). */\n exportName?: TExportName$1;\n /** Optional properties that will be made available to the service via `ctx.props`. */\n props?: Record<string, unknown>;\n /** Options that only apply during local development. */\n dev?: BindingDevOptions;\n}\n/**\n * Service binding (Worker-to-Worker). `worker` is the name or config of the\n * bound Worker; `exportName` selects a named `WorkerEntrypoint` export\n * (defaults to the default export).\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#service-bindings\n */\ninterface WorkerBinding<TWorker$1 extends WorkerReference = WorkerReference, TExportName$1 extends WorkerEntrypointExportName<TWorker$1> | undefined = WorkerEntrypointExportName<TWorker$1> | undefined> extends WorkerBindingOptions<TWorker$1, TExportName$1> {\n type: \"worker\";\n}\n/** Binding to a Worker Loader. */\ninterface WorkerLoaderBinding {\n type: \"worker-loader\";\n}\ninterface WorkflowBindingOptions<TWorker$1 extends WorkerReference = WorkerReference, TExportName$1 extends WorkflowExportName<TWorker$1> = WorkflowExportName<TWorker$1>> {\n /** The name or config of the Worker that defines the Workflow. */\n worker: TWorker$1;\n /** The exported class name of the Workflow. */\n exportName: TExportName$1;\n}\n/**\n * Binding to a Workflow. `worker` is the name or config of the Worker that\n * defines the Workflow; `exportName` is the exported `WorkflowEntrypoint`\n * class name.\n */\ninterface WorkflowBinding<TWorker$1 extends WorkerReference = WorkerReference, TExportName$1 extends WorkflowExportName<TWorker$1> = WorkflowExportName<TWorker$1>> extends WorkflowBindingOptions<TWorker$1, TExportName$1> {\n type: \"workflow\";\n}\ninterface Bindings {\n /**\n * Agent Memory namespace binding. Each binding is scoped to a namespace and\n * allows agents to persist and recall memory.\n */\n agentMemory(options: AgentMemoryBindingOptions): AgentMemoryBinding;\n /**\n * Binding to the Workers AI project.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#workers-ai\n */\n ai<TAiModelList extends AiModelListType = AiModels>(options?: AiBindingOptions): TypedAiBinding<TAiModelList>;\n /**\n * AI Search instance binding. Each binding is bound directly to a single\n * pre-existing instance within the \"default\" namespace.\n */\n aiSearch(options: AiSearchBindingOptions): AiSearchBinding;\n /**\n * AI Search namespace binding. Each binding is scoped to a namespace and\n * allows dynamic instance CRUD within it.\n */\n aiSearchNamespace(options: AiSearchNamespaceBindingOptions): AiSearchNamespaceBinding;\n /**\n * Binding to an Analytics Engine dataset.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#analytics-engine-datasets\n */\n analyticsEngineDataset(options?: AnalyticsEngineDatasetBindingOptions): AnalyticsEngineDatasetBinding;\n /**\n * Binding to an Artifacts instance. Artifacts provides git-compatible file\n * storage on Cloudflare Workers.\n */\n artifacts(options: ArtifactsBindingOptions): ArtifactsBinding;\n /**\n * Binding to the Worker's static assets.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#assets\n */\n assets(): AssetsBinding;\n /**\n * Binding to a headless browser usable from the Worker.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#browser-rendering\n */\n browser(options?: BrowserBindingOptions): BrowserBinding;\n /**\n * Binding to a D1 database.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#d1-databases\n */\n d1(options?: D1BindingOptions): D1Binding;\n /**\n * Binding to a Workers for Platforms dispatch namespace.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#dispatch-namespace-bindings-workers-for-platforms\n */\n dispatchNamespace(options?: DispatchNamespaceBindingOptions): DispatchNamespaceBinding;\n /**\n * Binding to a Durable Object class. `worker` is the name or config of the\n * Worker that defines the class; `exportName` is the exported class name.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#durable-objects\n */\n durableObject<TWorker$1 extends WorkerReference, TExportName$1 extends DurableObjectExportName<TWorker$1>>(options: DurableObjectBindingOptions<TWorker$1, TExportName$1>): DurableObjectBinding<TWorker$1, TExportName$1>;\n /** Binding to a Flagship feature-flag service. */\n flagship(options?: FlagshipBindingOptions): FlagshipBinding;\n /**\n * Binding to a Hyperdrive configuration.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#hyperdrive\n */\n hyperdrive(options: HyperdriveBindingOptions): HyperdriveBinding;\n /**\n * Binding to Cloudflare Images.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#images\n */\n images(options?: ImagesBindingOptions): ImagesBinding$1;\n /**\n * Inline JSON value made available to the Worker on `env` under the\n * binding name.\n */\n json<T$1 extends Json>(value: T$1): JsonBinding<T$1>;\n /**\n * Binding to a Workers KV namespace.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#kv-namespaces\n */\n kv<TKey extends string = string>(options?: KvBindingOptions): TypedKvBinding<TKey>;\n /** Binding for forwarding logs to logfwdr. */\n logfwdr(options: LogfwdrBindingOptions): LogfwdrBinding;\n /** Binding to Cloudflare Media Transformations. */\n media(options?: MediaBindingOptions): MediaBinding$1;\n /**\n * Binding to an uploaded mTLS certificate.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#mtls-certificates\n */\n mtlsCertificate(options: MtlsCertificateBindingOptions): MtlsCertificateBinding;\n /** Binding to a Cloudflare Pipeline. */\n pipeline<TRecord extends PipelineRecord = PipelineRecord>(options: PipelineBindingOptions): TypedPipelineBinding<TRecord>;\n /**\n * Producer binding to a Cloudflare Queue.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#queues\n */\n queue<TBody = unknown>(options?: QueueBindingOptions): TypedQueueBinding<TBody>;\n /**\n * Binding to an R2 bucket.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#r2-buckets\n */\n r2(options?: R2BindingOptions): R2Binding;\n /** Binding to a rate limiter. */\n rateLimit(options: RateLimitBindingOptions): RateLimitBinding;\n /**\n * Declares a secret that is required by your Worker, exposed on `env` under\n * the binding name.\n *\n * When defined, this binding:\n * - Replaces .dev.vars/.env/process.env inference for type generation\n * - Enables local dev validation with warnings for missing secrets\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#secrets-configuration-property\n */\n secret(): SecretBinding;\n /** Binding to a Secrets Store secret. */\n secretsStoreSecret(options: SecretsStoreSecretBindingOptions): SecretsStoreSecretBinding;\n /**\n * Binding for sending email from inside the Worker.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#email-bindings\n */\n sendEmail(options?: SendEmailBindingOptions): SendEmailBinding;\n /** Binding to Cloudflare Stream. */\n stream(options?: StreamBindingOptions): StreamBinding$1;\n /**\n * Inline string value made available to the Worker on `env` under the\n * binding name.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#environment-variables\n */\n text<T$1 extends string>(value: T$1): TextBinding<T$1>;\n /**\n * Binding to a Vectorize index.\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#vectorize-indexes\n */\n vectorize(options: VectorizeBindingOptions): VectorizeBinding;\n /** Binding to the Worker version's metadata. */\n versionMetadata(): VersionMetadataBinding;\n /** Binding to a VPC network. */\n vpcNetwork(options: VpcNetworkBindingOptions): VpcNetworkBinding;\n /** Binding to a VPC service. */\n vpcService(options: VpcServiceBindingOptions): VpcServiceBinding;\n /**\n * Service binding (Worker-to-Worker). `worker` is the name or config of the\n * bound Worker; `exportName` selects a named `WorkerEntrypoint` export\n * (defaults to the default export).\n *\n * For reference, see https://developers.cloudflare.com/workers/wrangler/configuration/#service-bindings\n */\n worker<TWorker$1 extends WorkerReference, TExportName$1 extends WorkerEntrypointExportName<TWorker$1> | undefined = undefined>(options: WorkerBindingOptions<TWorker$1, TExportName$1>): WorkerBinding<TWorker$1, NoInfer<TExportName$1>>;\n /** Binding to a Worker Loader. */\n workerLoader(): WorkerLoaderBinding;\n}\ndeclare const bindings: Bindings;\n//#endregion\nexport { 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, 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, exports 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, LogfwdrBinding as y, WorkerEntrypointExportOptions as yt, VpcServiceBinding as z };"],"mappings":"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"}