diff --git a/core/blockly.ts b/core/blockly.ts
index 052c606bae1..b1d2cc20d4d 100644
--- a/core/blockly.ts
+++ b/core/blockly.ts
@@ -118,7 +118,7 @@ import {MarkerManager} from './marker_manager.js';
import {Menu} from './menu.js';
import {MenuItem} from './menuitem.js';
import {MetricsManager} from './metrics_manager.js';
-import {Msg} from './msg.js';
+import {Msg, setLocale} from './msg.js';
import {Mutator} from './mutator.js';
import {Names} from './names.js';
import {Options} from './options.js';
@@ -560,6 +560,7 @@ export const VARIABLE_DYNAMIC_CATEGORY_NAME: string =
*/
export const PROCEDURE_CATEGORY_NAME: string = Procedures.CATEGORY_NAME;
+
// Context for why we need to monkey-patch in these functions (internal):
// https://docs.google.com/document/d/1MbO0LEA-pAyx1ErGLJnyUqTLrcYTo-5zga9qplnxeXo/edit?usp=sharing&resourcekey=0-5h_32-i-dHwHjf_9KYEVKg
@@ -720,7 +721,7 @@ export {Menu};
export {MenuItem};
export {MetricsManager};
export {Mutator};
-export {Msg};
+export {Msg, setLocale};
export {Names};
export {Options};
export {RenderedConnection};
diff --git a/core/msg.ts b/core/msg.ts
index 4d4c440d56b..39d05b0c5f7 100644
--- a/core/msg.ts
+++ b/core/msg.ts
@@ -15,3 +15,20 @@ goog.declareModuleId('Blockly.Msg');
/** A dictionary of localised messages. */
export const Msg: {[key: string]: string} = Object.create(null);
+
+/**
+ * Sets the locale (i.e. the localized messages/block-text/etc) to the given
+ * locale.
+ *
+ * This is not useful/necessary when loading from a script tag, because the
+ * messages are automatically cluged into the Blockly.Msg object. But we provide
+ * it in both the script-tag and non-script-tag contexts so that the tscompiler
+ * can properly create our type definition files.
+ *
+ * @param locale An object defining the messages for a given language.
+ */
+export const setLocale = function(locale: {[key: string]: string}) {
+ Object.keys(locale).forEach(function(k) {
+ Msg[k] = locale[k];
+ });
+};
diff --git a/scripts/gulpfiles/package_tasks.js b/scripts/gulpfiles/package_tasks.js
index 312754d6c92..479d1c856ef 100644
--- a/scripts/gulpfiles/package_tasks.js
+++ b/scripts/gulpfiles/package_tasks.js
@@ -377,7 +377,7 @@ function packageReadme() {
function packageDTS() {
const handwrittenSrcs = [
'typings/*.d.ts',
- 'typings/msg/msg.d.ts',
+ 'typings/msg/*.d.ts',
];
return gulp.src(handwrittenSrcs, {base: 'typings'})
.pipe(gulp.src(`${TYPINGS_BUILD_DIR}/**/*.d.ts`))
diff --git a/scripts/package/browser/core.js b/scripts/package/browser/core.js
index a0b0d92593a..7471feda61d 100644
--- a/scripts/package/browser/core.js
+++ b/scripts/package/browser/core.js
@@ -12,9 +12,3 @@
/* eslint-disable */
'use strict';
-// Add a helper method to set the Blockly locale.
-Blockly.setLocale = function (locale) {
- Object.keys(locale).forEach(function (k) {
- Blockly.Msg[k] = locale[k];
- });
-};
diff --git a/scripts/package/node/core.js b/scripts/package/node/core.js
index 2135b966dfb..11e77b5b6a9 100644
--- a/scripts/package/node/core.js
+++ b/scripts/package/node/core.js
@@ -12,12 +12,6 @@
/* eslint-disable */
'use strict';
-// Add a helper method to set the Blockly locale.
-Blockly.setLocale = function (locale) {
- Object.keys(locale).forEach(function (k) {
- Blockly.Msg[k] = locale[k];
- });
-};
// Override textToDomDocument and provide Node.js alternatives to DOMParser and
// XMLSerializer.
diff --git a/typings/msg/ab.d.ts b/typings/msg/ab.d.ts
index eb87b9bf30d..5f2d13710bd 100644
--- a/typings/msg/ab.d.ts
+++ b/typings/msg/ab.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly ab locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/ace.d.ts b/typings/msg/ace.d.ts
new file mode 100644
index 00000000000..5f2d13710bd
--- /dev/null
+++ b/typings/msg/ace.d.ts
@@ -0,0 +1,8 @@
+/**
+ * @license
+ * Copyright 2022 Google LLC
+ * SPDX-License-Identifier: Apache-2.0
+ */
+
+export * from './msg';
+
diff --git a/typings/msg/af.d.ts b/typings/msg/af.d.ts
new file mode 100644
index 00000000000..5f2d13710bd
--- /dev/null
+++ b/typings/msg/af.d.ts
@@ -0,0 +1,8 @@
+/**
+ * @license
+ * Copyright 2022 Google LLC
+ * SPDX-License-Identifier: Apache-2.0
+ */
+
+export * from './msg';
+
diff --git a/typings/msg/am.d.ts b/typings/msg/am.d.ts
new file mode 100644
index 00000000000..5f2d13710bd
--- /dev/null
+++ b/typings/msg/am.d.ts
@@ -0,0 +1,8 @@
+/**
+ * @license
+ * Copyright 2022 Google LLC
+ * SPDX-License-Identifier: Apache-2.0
+ */
+
+export * from './msg';
+
diff --git a/typings/msg/ar.d.ts b/typings/msg/ar.d.ts
index e2435d74331..5f2d13710bd 100644
--- a/typings/msg/ar.d.ts
+++ b/typings/msg/ar.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly ar locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/ast.d.ts b/typings/msg/ast.d.ts
new file mode 100644
index 00000000000..5f2d13710bd
--- /dev/null
+++ b/typings/msg/ast.d.ts
@@ -0,0 +1,8 @@
+/**
+ * @license
+ * Copyright 2022 Google LLC
+ * SPDX-License-Identifier: Apache-2.0
+ */
+
+export * from './msg';
+
diff --git a/typings/msg/az.d.ts b/typings/msg/az.d.ts
index a8777813110..5f2d13710bd 100644
--- a/typings/msg/az.d.ts
+++ b/typings/msg/az.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly az locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/ba.d.ts b/typings/msg/ba.d.ts
index 21cc21cc1c4..5f2d13710bd 100644
--- a/typings/msg/ba.d.ts
+++ b/typings/msg/ba.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly ba locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/bcc.d.ts b/typings/msg/bcc.d.ts
index e60e54df594..5f2d13710bd 100644
--- a/typings/msg/bcc.d.ts
+++ b/typings/msg/bcc.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly bcc locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/be-tarask.d.ts b/typings/msg/be-tarask.d.ts
index 91640bb40da..5f2d13710bd 100644
--- a/typings/msg/be-tarask.d.ts
+++ b/typings/msg/be-tarask.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly be-tarask locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/be.d.ts b/typings/msg/be.d.ts
index 0857b63288b..5f2d13710bd 100644
--- a/typings/msg/be.d.ts
+++ b/typings/msg/be.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly be locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/bg.d.ts b/typings/msg/bg.d.ts
index 81905151a62..5f2d13710bd 100644
--- a/typings/msg/bg.d.ts
+++ b/typings/msg/bg.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly bg locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/bn.d.ts b/typings/msg/bn.d.ts
index 8207499d711..5f2d13710bd 100644
--- a/typings/msg/bn.d.ts
+++ b/typings/msg/bn.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly bn locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/br.d.ts b/typings/msg/br.d.ts
index 319e7ade316..5f2d13710bd 100644
--- a/typings/msg/br.d.ts
+++ b/typings/msg/br.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly br locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/bs.d.ts b/typings/msg/bs.d.ts
index 41ad0987c5a..5f2d13710bd 100644
--- a/typings/msg/bs.d.ts
+++ b/typings/msg/bs.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly bs locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/ca.d.ts b/typings/msg/ca.d.ts
index a89b9374b9f..5f2d13710bd 100644
--- a/typings/msg/ca.d.ts
+++ b/typings/msg/ca.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly ca locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/cdo.d.ts b/typings/msg/cdo.d.ts
new file mode 100644
index 00000000000..5f2d13710bd
--- /dev/null
+++ b/typings/msg/cdo.d.ts
@@ -0,0 +1,8 @@
+/**
+ * @license
+ * Copyright 2022 Google LLC
+ * SPDX-License-Identifier: Apache-2.0
+ */
+
+export * from './msg';
+
diff --git a/typings/msg/cs.d.ts b/typings/msg/cs.d.ts
index fd8998d2bf4..5f2d13710bd 100644
--- a/typings/msg/cs.d.ts
+++ b/typings/msg/cs.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly cs locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/da.d.ts b/typings/msg/da.d.ts
index 9ae9615a05f..5f2d13710bd 100644
--- a/typings/msg/da.d.ts
+++ b/typings/msg/da.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly da locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/de.d.ts b/typings/msg/de.d.ts
index 84004ffdddc..5f2d13710bd 100644
--- a/typings/msg/de.d.ts
+++ b/typings/msg/de.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly de locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/diq.d.ts b/typings/msg/diq.d.ts
index 2dadf5b232d..5f2d13710bd 100644
--- a/typings/msg/diq.d.ts
+++ b/typings/msg/diq.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly diq locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/dty.d.ts b/typings/msg/dty.d.ts
index 995d93af2a3..5f2d13710bd 100644
--- a/typings/msg/dty.d.ts
+++ b/typings/msg/dty.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly dty locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/ee.d.ts b/typings/msg/ee.d.ts
index 436e5b9ada7..5f2d13710bd 100644
--- a/typings/msg/ee.d.ts
+++ b/typings/msg/ee.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly ee locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/el.d.ts b/typings/msg/el.d.ts
index 981a987b600..5f2d13710bd 100644
--- a/typings/msg/el.d.ts
+++ b/typings/msg/el.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly el locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/en-gb.d.ts b/typings/msg/en-gb.d.ts
index 59032a4ff57..5f2d13710bd 100644
--- a/typings/msg/en-gb.d.ts
+++ b/typings/msg/en-gb.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly en-gb locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/en.d.ts b/typings/msg/en.d.ts
index 256aa7d448c..5f2d13710bd 100644
--- a/typings/msg/en.d.ts
+++ b/typings/msg/en.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly en locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/eo.d.ts b/typings/msg/eo.d.ts
index a9b4004cc28..5f2d13710bd 100644
--- a/typings/msg/eo.d.ts
+++ b/typings/msg/eo.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly eo locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/es.d.ts b/typings/msg/es.d.ts
index 4dd0c585a3e..5f2d13710bd 100644
--- a/typings/msg/es.d.ts
+++ b/typings/msg/es.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly es locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/et.d.ts b/typings/msg/et.d.ts
index 01541ff11a2..5f2d13710bd 100644
--- a/typings/msg/et.d.ts
+++ b/typings/msg/et.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly et locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/eu.d.ts b/typings/msg/eu.d.ts
index 1d0e8520756..5f2d13710bd 100644
--- a/typings/msg/eu.d.ts
+++ b/typings/msg/eu.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly eu locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/fa.d.ts b/typings/msg/fa.d.ts
index 0e929790d1e..5f2d13710bd 100644
--- a/typings/msg/fa.d.ts
+++ b/typings/msg/fa.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly fa locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/fi.d.ts b/typings/msg/fi.d.ts
index dad65e992d2..5f2d13710bd 100644
--- a/typings/msg/fi.d.ts
+++ b/typings/msg/fi.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly fi locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/fo.d.ts b/typings/msg/fo.d.ts
new file mode 100644
index 00000000000..5f2d13710bd
--- /dev/null
+++ b/typings/msg/fo.d.ts
@@ -0,0 +1,8 @@
+/**
+ * @license
+ * Copyright 2022 Google LLC
+ * SPDX-License-Identifier: Apache-2.0
+ */
+
+export * from './msg';
+
diff --git a/typings/msg/fr.d.ts b/typings/msg/fr.d.ts
index 6014c3b6353..5f2d13710bd 100644
--- a/typings/msg/fr.d.ts
+++ b/typings/msg/fr.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly fr locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/frr.d.ts b/typings/msg/frr.d.ts
new file mode 100644
index 00000000000..5f2d13710bd
--- /dev/null
+++ b/typings/msg/frr.d.ts
@@ -0,0 +1,8 @@
+/**
+ * @license
+ * Copyright 2022 Google LLC
+ * SPDX-License-Identifier: Apache-2.0
+ */
+
+export * from './msg';
+
diff --git a/typings/msg/gl.d.ts b/typings/msg/gl.d.ts
index 874c328f705..5f2d13710bd 100644
--- a/typings/msg/gl.d.ts
+++ b/typings/msg/gl.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly gl locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/gn.d.ts b/typings/msg/gn.d.ts
new file mode 100644
index 00000000000..5f2d13710bd
--- /dev/null
+++ b/typings/msg/gn.d.ts
@@ -0,0 +1,8 @@
+/**
+ * @license
+ * Copyright 2022 Google LLC
+ * SPDX-License-Identifier: Apache-2.0
+ */
+
+export * from './msg';
+
diff --git a/typings/msg/gor.d.ts b/typings/msg/gor.d.ts
index 69c2999d429..5f2d13710bd 100644
--- a/typings/msg/gor.d.ts
+++ b/typings/msg/gor.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly gor locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/ha.d.ts b/typings/msg/ha.d.ts
index f5e92a6af2e..5f2d13710bd 100644
--- a/typings/msg/ha.d.ts
+++ b/typings/msg/ha.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly ha locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/hak.d.ts b/typings/msg/hak.d.ts
new file mode 100644
index 00000000000..5f2d13710bd
--- /dev/null
+++ b/typings/msg/hak.d.ts
@@ -0,0 +1,8 @@
+/**
+ * @license
+ * Copyright 2022 Google LLC
+ * SPDX-License-Identifier: Apache-2.0
+ */
+
+export * from './msg';
+
diff --git a/typings/msg/he.d.ts b/typings/msg/he.d.ts
index deb61f950b6..5f2d13710bd 100644
--- a/typings/msg/he.d.ts
+++ b/typings/msg/he.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly he locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/hi.d.ts b/typings/msg/hi.d.ts
index 5abcff526e2..5f2d13710bd 100644
--- a/typings/msg/hi.d.ts
+++ b/typings/msg/hi.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly hi locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/hr.d.ts b/typings/msg/hr.d.ts
new file mode 100644
index 00000000000..5f2d13710bd
--- /dev/null
+++ b/typings/msg/hr.d.ts
@@ -0,0 +1,8 @@
+/**
+ * @license
+ * Copyright 2022 Google LLC
+ * SPDX-License-Identifier: Apache-2.0
+ */
+
+export * from './msg';
+
diff --git a/typings/msg/hrx.d.ts b/typings/msg/hrx.d.ts
index 785916169f7..5f2d13710bd 100644
--- a/typings/msg/hrx.d.ts
+++ b/typings/msg/hrx.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly hrx locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/hu.d.ts b/typings/msg/hu.d.ts
index 3f87f846d11..5f2d13710bd 100644
--- a/typings/msg/hu.d.ts
+++ b/typings/msg/hu.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly hu locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/hy.d.ts b/typings/msg/hy.d.ts
index ee726e22395..5f2d13710bd 100644
--- a/typings/msg/hy.d.ts
+++ b/typings/msg/hy.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly hy locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/ia.d.ts b/typings/msg/ia.d.ts
index b0324c970c8..5f2d13710bd 100644
--- a/typings/msg/ia.d.ts
+++ b/typings/msg/ia.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly ia locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/id.d.ts b/typings/msg/id.d.ts
index 79a2a28f2b8..5f2d13710bd 100644
--- a/typings/msg/id.d.ts
+++ b/typings/msg/id.d.ts
@@ -1,15 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly ID locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
+export * from './msg';
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
diff --git a/typings/msg/ig.d.ts b/typings/msg/ig.d.ts
index 90e5c7beceb..5f2d13710bd 100644
--- a/typings/msg/ig.d.ts
+++ b/typings/msg/ig.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly ig locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/inh.d.ts b/typings/msg/inh.d.ts
new file mode 100644
index 00000000000..5f2d13710bd
--- /dev/null
+++ b/typings/msg/inh.d.ts
@@ -0,0 +1,8 @@
+/**
+ * @license
+ * Copyright 2022 Google LLC
+ * SPDX-License-Identifier: Apache-2.0
+ */
+
+export * from './msg';
+
diff --git a/typings/msg/is.d.ts b/typings/msg/is.d.ts
index 88bfa07b8ea..5f2d13710bd 100644
--- a/typings/msg/is.d.ts
+++ b/typings/msg/is.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly is locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/it.d.ts b/typings/msg/it.d.ts
index 0bff1ff74de..5f2d13710bd 100644
--- a/typings/msg/it.d.ts
+++ b/typings/msg/it.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly it locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/ja.d.ts b/typings/msg/ja.d.ts
index ed76fdf25fd..5f2d13710bd 100644
--- a/typings/msg/ja.d.ts
+++ b/typings/msg/ja.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly ja locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/ka.d.ts b/typings/msg/ka.d.ts
new file mode 100644
index 00000000000..5f2d13710bd
--- /dev/null
+++ b/typings/msg/ka.d.ts
@@ -0,0 +1,8 @@
+/**
+ * @license
+ * Copyright 2022 Google LLC
+ * SPDX-License-Identifier: Apache-2.0
+ */
+
+export * from './msg';
+
diff --git a/typings/msg/kab.d.ts b/typings/msg/kab.d.ts
index 98747fa4912..5f2d13710bd 100644
--- a/typings/msg/kab.d.ts
+++ b/typings/msg/kab.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly kab locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/kbd-cyrl.d.ts b/typings/msg/kbd-cyrl.d.ts
new file mode 100644
index 00000000000..5f2d13710bd
--- /dev/null
+++ b/typings/msg/kbd-cyrl.d.ts
@@ -0,0 +1,8 @@
+/**
+ * @license
+ * Copyright 2022 Google LLC
+ * SPDX-License-Identifier: Apache-2.0
+ */
+
+export * from './msg';
+
diff --git a/typings/msg/km.d.ts b/typings/msg/km.d.ts
new file mode 100644
index 00000000000..5f2d13710bd
--- /dev/null
+++ b/typings/msg/km.d.ts
@@ -0,0 +1,8 @@
+/**
+ * @license
+ * Copyright 2022 Google LLC
+ * SPDX-License-Identifier: Apache-2.0
+ */
+
+export * from './msg';
+
diff --git a/typings/msg/kn.d.ts b/typings/msg/kn.d.ts
index 9ac70f39fab..5f2d13710bd 100644
--- a/typings/msg/kn.d.ts
+++ b/typings/msg/kn.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly kn locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/ko.d.ts b/typings/msg/ko.d.ts
index 344002e5d8f..5f2d13710bd 100644
--- a/typings/msg/ko.d.ts
+++ b/typings/msg/ko.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly ko locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/ksh.d.ts b/typings/msg/ksh.d.ts
new file mode 100644
index 00000000000..5f2d13710bd
--- /dev/null
+++ b/typings/msg/ksh.d.ts
@@ -0,0 +1,8 @@
+/**
+ * @license
+ * Copyright 2022 Google LLC
+ * SPDX-License-Identifier: Apache-2.0
+ */
+
+export * from './msg';
+
diff --git a/typings/msg/ku-latn.d.ts b/typings/msg/ku-latn.d.ts
new file mode 100644
index 00000000000..5f2d13710bd
--- /dev/null
+++ b/typings/msg/ku-latn.d.ts
@@ -0,0 +1,8 @@
+/**
+ * @license
+ * Copyright 2022 Google LLC
+ * SPDX-License-Identifier: Apache-2.0
+ */
+
+export * from './msg';
+
diff --git a/typings/msg/ky.d.ts b/typings/msg/ky.d.ts
new file mode 100644
index 00000000000..5f2d13710bd
--- /dev/null
+++ b/typings/msg/ky.d.ts
@@ -0,0 +1,8 @@
+/**
+ * @license
+ * Copyright 2022 Google LLC
+ * SPDX-License-Identifier: Apache-2.0
+ */
+
+export * from './msg';
+
diff --git a/typings/msg/la.d.ts b/typings/msg/la.d.ts
new file mode 100644
index 00000000000..5f2d13710bd
--- /dev/null
+++ b/typings/msg/la.d.ts
@@ -0,0 +1,8 @@
+/**
+ * @license
+ * Copyright 2022 Google LLC
+ * SPDX-License-Identifier: Apache-2.0
+ */
+
+export * from './msg';
+
diff --git a/typings/msg/lb.d.ts b/typings/msg/lb.d.ts
index 0eee88ed56b..5f2d13710bd 100644
--- a/typings/msg/lb.d.ts
+++ b/typings/msg/lb.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly lb locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/lki.d.ts b/typings/msg/lki.d.ts
index 9559de10ef6..5f2d13710bd 100644
--- a/typings/msg/lki.d.ts
+++ b/typings/msg/lki.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly lki locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/lo.d.ts b/typings/msg/lo.d.ts
index 5a9071cea1f..5f2d13710bd 100644
--- a/typings/msg/lo.d.ts
+++ b/typings/msg/lo.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly lo locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/lrc.d.ts b/typings/msg/lrc.d.ts
index 044134af15d..5f2d13710bd 100644
--- a/typings/msg/lrc.d.ts
+++ b/typings/msg/lrc.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly lrc locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/lt.d.ts b/typings/msg/lt.d.ts
index 9cc7516c1e3..5f2d13710bd 100644
--- a/typings/msg/lt.d.ts
+++ b/typings/msg/lt.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly lt locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/lv.d.ts b/typings/msg/lv.d.ts
index 88b41c7af23..5f2d13710bd 100644
--- a/typings/msg/lv.d.ts
+++ b/typings/msg/lv.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly lv locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/mg.d.ts b/typings/msg/mg.d.ts
new file mode 100644
index 00000000000..5f2d13710bd
--- /dev/null
+++ b/typings/msg/mg.d.ts
@@ -0,0 +1,8 @@
+/**
+ * @license
+ * Copyright 2022 Google LLC
+ * SPDX-License-Identifier: Apache-2.0
+ */
+
+export * from './msg';
+
diff --git a/typings/msg/mk.d.ts b/typings/msg/mk.d.ts
index 951b027b755..5f2d13710bd 100644
--- a/typings/msg/mk.d.ts
+++ b/typings/msg/mk.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly mk locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/ml.d.ts b/typings/msg/ml.d.ts
new file mode 100644
index 00000000000..5f2d13710bd
--- /dev/null
+++ b/typings/msg/ml.d.ts
@@ -0,0 +1,8 @@
+/**
+ * @license
+ * Copyright 2022 Google LLC
+ * SPDX-License-Identifier: Apache-2.0
+ */
+
+export * from './msg';
+
diff --git a/typings/msg/mnw.d.ts b/typings/msg/mnw.d.ts
index 962b8c5c925..5f2d13710bd 100644
--- a/typings/msg/mnw.d.ts
+++ b/typings/msg/mnw.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly mnw locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/ms.d.ts b/typings/msg/ms.d.ts
index f154c4ef417..5f2d13710bd 100644
--- a/typings/msg/ms.d.ts
+++ b/typings/msg/ms.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly ms locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/msg.d.ts b/typings/msg/msg.d.ts
index 65d7808ab57..28f792abc32 100644
--- a/typings/msg/msg.d.ts
+++ b/typings/msg/msg.d.ts
@@ -10,435 +10,432 @@
*/
-declare namespace Blockly.Msg {
- let ADD_COMMENT : string ;
- let CANNOT_DELETE_VARIABLE_PROCEDURE : string ;
- let CHANGE_VALUE_TITLE : string ;
- let CLEAN_UP : string ;
- let COLLAPSED_WARNINGS_WARNING : string ;
- let COLLAPSE_ALL : string ;
- let COLLAPSE_BLOCK : string ;
- let COLOUR_BLEND_COLOUR1 : string ;
- let COLOUR_BLEND_COLOUR2 : string ;
- let COLOUR_BLEND_HELPURL : string ;
- let COLOUR_BLEND_RATIO : string ;
- let COLOUR_BLEND_TITLE : string ;
- let COLOUR_BLEND_TOOLTIP : string ;
- let COLOUR_HUE : string ;
- let COLOUR_PICKER_HELPURL : string ;
- let COLOUR_PICKER_TOOLTIP : string ;
- let COLOUR_RANDOM_HELPURL : string ;
- let COLOUR_RANDOM_TITLE : string ;
- let COLOUR_RANDOM_TOOLTIP : string ;
- let COLOUR_RGB_BLUE : string ;
- let COLOUR_RGB_GREEN : string ;
- let COLOUR_RGB_HELPURL : string ;
- let COLOUR_RGB_RED : string ;
- let COLOUR_RGB_TITLE : string ;
- let COLOUR_RGB_TOOLTIP : string ;
- let CONTROLS_FLOW_STATEMENTS_HELPURL : string ;
- let CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK : string ;
- let CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE : string ;
- let CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK : string ;
- let CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE : string ;
- let CONTROLS_FLOW_STATEMENTS_WARNING : string ;
- let CONTROLS_FOREACH_HELPURL : string ;
- let CONTROLS_FOREACH_INPUT_DO : string ;
- let CONTROLS_FOREACH_TITLE : string ;
- let CONTROLS_FOREACH_TOOLTIP : string ;
- let CONTROLS_FOR_HELPURL : string ;
- let CONTROLS_FOR_INPUT_DO : string ;
- let CONTROLS_FOR_TITLE : string ;
- let CONTROLS_FOR_TOOLTIP : string ;
- let CONTROLS_IF_ELSEIF_TITLE_ELSEIF : string ;
- let CONTROLS_IF_ELSEIF_TOOLTIP : string ;
- let CONTROLS_IF_ELSE_TITLE_ELSE : string ;
- let CONTROLS_IF_ELSE_TOOLTIP : string ;
- let CONTROLS_IF_HELPURL : string ;
- let CONTROLS_IF_IF_TITLE_IF : string ;
- let CONTROLS_IF_IF_TOOLTIP : string ;
- let CONTROLS_IF_MSG_ELSE : string ;
- let CONTROLS_IF_MSG_ELSEIF : string ;
- let CONTROLS_IF_MSG_IF : string ;
- let CONTROLS_IF_MSG_THEN : string ;
- let CONTROLS_IF_TOOLTIP_1 : string ;
- let CONTROLS_IF_TOOLTIP_2 : string ;
- let CONTROLS_IF_TOOLTIP_3 : string ;
- let CONTROLS_IF_TOOLTIP_4 : string ;
- let CONTROLS_REPEAT_HELPURL : string ;
- let CONTROLS_REPEAT_INPUT_DO : string ;
- let CONTROLS_REPEAT_TITLE : string ;
- let CONTROLS_REPEAT_TOOLTIP : string ;
- let CONTROLS_WHILEUNTIL_HELPURL : string ;
- let CONTROLS_WHILEUNTIL_INPUT_DO : string ;
- let CONTROLS_WHILEUNTIL_OPERATOR_UNTIL : string ;
- let CONTROLS_WHILEUNTIL_OPERATOR_WHILE : string ;
- let CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL : string ;
- let CONTROLS_WHILEUNTIL_TOOLTIP_WHILE : string ;
- let DELETE_ALL_BLOCKS : string ;
- let DELETE_BLOCK : string ;
- let DELETE_VARIABLE : string ;
- let DELETE_VARIABLE_CONFIRMATION : string ;
- let DELETE_X_BLOCKS : string ;
- let DISABLE_BLOCK : string ;
- let DUPLICATE_BLOCK : string ;
- let DUPLICATE_COMMENT : string ;
- let ENABLE_BLOCK : string ;
- let EXPAND_ALL : string ;
- let EXPAND_BLOCK : string ;
- let EXTERNAL_INPUTS : string ;
- let HELP : string ;
- let INLINE_INPUTS : string ;
- let IOS_CANCEL : string ;
- let IOS_ERROR : string ;
- let IOS_OK : string ;
- let IOS_PROCEDURES_ADD_INPUT : string ;
- let IOS_PROCEDURES_ALLOW_STATEMENTS : string ;
- let IOS_PROCEDURES_DUPLICATE_INPUTS_ERROR : string ;
- let IOS_PROCEDURES_INPUTS : string ;
- let IOS_VARIABLES_ADD_BUTTON : string ;
- let IOS_VARIABLES_ADD_VARIABLE : string ;
- let IOS_VARIABLES_DELETE_BUTTON : string ;
- let IOS_VARIABLES_EMPTY_NAME_ERROR : string ;
- let IOS_VARIABLES_RENAME_BUTTON : string ;
- let IOS_VARIABLES_VARIABLE_NAME : string ;
- let LISTS_CREATE_EMPTY_HELPURL : string ;
- let LISTS_CREATE_EMPTY_TITLE : string ;
- let LISTS_CREATE_EMPTY_TOOLTIP : string ;
- let LISTS_CREATE_WITH_CONTAINER_TITLE_ADD : string ;
- let LISTS_CREATE_WITH_CONTAINER_TOOLTIP : string ;
- let LISTS_CREATE_WITH_HELPURL : string ;
- let LISTS_CREATE_WITH_INPUT_WITH : string ;
- let LISTS_CREATE_WITH_ITEM_TITLE : string ;
- let LISTS_CREATE_WITH_ITEM_TOOLTIP : string ;
- let LISTS_CREATE_WITH_TOOLTIP : string ;
- let LISTS_GET_INDEX_FIRST : string ;
- let LISTS_GET_INDEX_FROM_END : string ;
- let LISTS_GET_INDEX_FROM_START : string ;
- let LISTS_GET_INDEX_GET : string ;
- let LISTS_GET_INDEX_GET_REMOVE : string ;
- let LISTS_GET_INDEX_HELPURL : string ;
- let LISTS_GET_INDEX_INPUT_IN_LIST : string ;
- let LISTS_GET_INDEX_LAST : string ;
- let LISTS_GET_INDEX_RANDOM : string ;
- let LISTS_GET_INDEX_REMOVE : string ;
- let LISTS_GET_INDEX_TAIL : string ;
- let LISTS_GET_INDEX_TOOLTIP_GET_FIRST : string ;
- let LISTS_GET_INDEX_TOOLTIP_GET_FROM : string ;
- let LISTS_GET_INDEX_TOOLTIP_GET_LAST : string ;
- let LISTS_GET_INDEX_TOOLTIP_GET_RANDOM : string ;
- let LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST : string ;
- let LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM : string ;
- let LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST : string ;
- let LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM : string ;
- let LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST : string ;
- let LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM : string ;
- let LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST : string ;
- let LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM : string ;
- let LISTS_GET_SUBLIST_END_FROM_END : string ;
- let LISTS_GET_SUBLIST_END_FROM_START : string ;
- let LISTS_GET_SUBLIST_END_LAST : string ;
- let LISTS_GET_SUBLIST_HELPURL : string ;
- let LISTS_GET_SUBLIST_INPUT_IN_LIST : string ;
- let LISTS_GET_SUBLIST_START_FIRST : string ;
- let LISTS_GET_SUBLIST_START_FROM_END : string ;
- let LISTS_GET_SUBLIST_START_FROM_START : string ;
- let LISTS_GET_SUBLIST_TAIL : string ;
- let LISTS_GET_SUBLIST_TOOLTIP : string ;
- let LISTS_HUE : string ;
- let LISTS_INDEX_FROM_END_TOOLTIP : string ;
- let LISTS_INDEX_FROM_START_TOOLTIP : string ;
- let LISTS_INDEX_OF_FIRST : string ;
- let LISTS_INDEX_OF_HELPURL : string ;
- let LISTS_INDEX_OF_INPUT_IN_LIST : string ;
- let LISTS_INDEX_OF_LAST : string ;
- let LISTS_INDEX_OF_TOOLTIP : string ;
- let LISTS_INLIST : string ;
- let LISTS_ISEMPTY_HELPURL : string ;
- let LISTS_ISEMPTY_TITLE : string ;
- let LISTS_ISEMPTY_TOOLTIP : string ;
- let LISTS_LENGTH_HELPURL : string ;
- let LISTS_LENGTH_TITLE : string ;
- let LISTS_LENGTH_TOOLTIP : string ;
- let LISTS_REPEAT_HELPURL : string ;
- let LISTS_REPEAT_TITLE : string ;
- let LISTS_REPEAT_TOOLTIP : string ;
- let LISTS_REVERSE_HELPURL : string ;
- let LISTS_REVERSE_MESSAGE0 : string ;
- let LISTS_REVERSE_TOOLTIP : string ;
- let LISTS_SET_INDEX_HELPURL : string ;
- let LISTS_SET_INDEX_INPUT_IN_LIST : string ;
- let LISTS_SET_INDEX_INPUT_TO : string ;
- let LISTS_SET_INDEX_INSERT : string ;
- let LISTS_SET_INDEX_SET : string ;
- let LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST : string ;
- let LISTS_SET_INDEX_TOOLTIP_INSERT_FROM : string ;
- let LISTS_SET_INDEX_TOOLTIP_INSERT_LAST : string ;
- let LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM : string ;
- let LISTS_SET_INDEX_TOOLTIP_SET_FIRST : string ;
- let LISTS_SET_INDEX_TOOLTIP_SET_FROM : string ;
- let LISTS_SET_INDEX_TOOLTIP_SET_LAST : string ;
- let LISTS_SET_INDEX_TOOLTIP_SET_RANDOM : string ;
- let LISTS_SORT_HELPURL : string ;
- let LISTS_SORT_ORDER_ASCENDING : string ;
- let LISTS_SORT_ORDER_DESCENDING : string ;
- let LISTS_SORT_TITLE : string ;
- let LISTS_SORT_TOOLTIP : string ;
- let LISTS_SORT_TYPE_IGNORECASE : string ;
- let LISTS_SORT_TYPE_NUMERIC : string ;
- let LISTS_SORT_TYPE_TEXT : string ;
- let LISTS_SPLIT_HELPURL : string ;
- let LISTS_SPLIT_LIST_FROM_TEXT : string ;
- let LISTS_SPLIT_TEXT_FROM_LIST : string ;
- let LISTS_SPLIT_TOOLTIP_JOIN : string ;
- let LISTS_SPLIT_TOOLTIP_SPLIT : string ;
- let LISTS_SPLIT_WITH_DELIMITER : string ;
- let LOGIC_BOOLEAN_FALSE : string ;
- let LOGIC_BOOLEAN_HELPURL : string ;
- let LOGIC_BOOLEAN_TOOLTIP : string ;
- let LOGIC_BOOLEAN_TRUE : string ;
- let LOGIC_COMPARE_HELPURL : string ;
- let LOGIC_COMPARE_TOOLTIP_EQ : string ;
- let LOGIC_COMPARE_TOOLTIP_GT : string ;
- let LOGIC_COMPARE_TOOLTIP_GTE : string ;
- let LOGIC_COMPARE_TOOLTIP_LT : string ;
- let LOGIC_COMPARE_TOOLTIP_LTE : string ;
- let LOGIC_COMPARE_TOOLTIP_NEQ : string ;
- let LOGIC_HUE : string ;
- let LOGIC_NEGATE_HELPURL : string ;
- let LOGIC_NEGATE_TITLE : string ;
- let LOGIC_NEGATE_TOOLTIP : string ;
- let LOGIC_NULL : string ;
- let LOGIC_NULL_HELPURL : string ;
- let LOGIC_NULL_TOOLTIP : string ;
- let LOGIC_OPERATION_AND : string ;
- let LOGIC_OPERATION_HELPURL : string ;
- let LOGIC_OPERATION_OR : string ;
- let LOGIC_OPERATION_TOOLTIP_AND : string ;
- let LOGIC_OPERATION_TOOLTIP_OR : string ;
- let LOGIC_TERNARY_CONDITION : string ;
- let LOGIC_TERNARY_HELPURL : string ;
- let LOGIC_TERNARY_IF_FALSE : string ;
- let LOGIC_TERNARY_IF_TRUE : string ;
- let LOGIC_TERNARY_TOOLTIP : string ;
- let LOOPS_HUE : string ;
- let MATH_ADDITION_SYMBOL : string ;
- let MATH_ARITHMETIC_HELPURL : string ;
- let MATH_ARITHMETIC_TOOLTIP_ADD : string ;
- let MATH_ARITHMETIC_TOOLTIP_DIVIDE : string ;
- let MATH_ARITHMETIC_TOOLTIP_MINUS : string ;
- let MATH_ARITHMETIC_TOOLTIP_MULTIPLY : string ;
- let MATH_ARITHMETIC_TOOLTIP_POWER : string ;
- let MATH_ATAN2_HELPURL : string ;
- let MATH_ATAN2_TITLE : string ;
- let MATH_ATAN2_TOOLTIP : string ;
- let MATH_CHANGE_HELPURL : string ;
- let MATH_CHANGE_TITLE : string ;
- let MATH_CHANGE_TITLE_ITEM : string ;
- let MATH_CHANGE_TOOLTIP : string ;
- let MATH_CONSTANT_HELPURL : string ;
- let MATH_CONSTANT_TOOLTIP : string ;
- let MATH_CONSTRAIN_HELPURL : string ;
- let MATH_CONSTRAIN_TITLE : string ;
- let MATH_CONSTRAIN_TOOLTIP : string ;
- let MATH_DIVISION_SYMBOL : string ;
- let MATH_HUE : string ;
- let MATH_IS_DIVISIBLE_BY : string ;
- let MATH_IS_EVEN : string ;
- let MATH_IS_NEGATIVE : string ;
- let MATH_IS_ODD : string ;
- let MATH_IS_POSITIVE : string ;
- let MATH_IS_PRIME : string ;
- let MATH_IS_TOOLTIP : string ;
- let MATH_IS_WHOLE : string ;
- let MATH_MODULO_HELPURL : string ;
- let MATH_MODULO_TITLE : string ;
- let MATH_MODULO_TOOLTIP : string ;
- let MATH_MULTIPLICATION_SYMBOL : string ;
- let MATH_NUMBER_HELPURL : string ;
- let MATH_NUMBER_TOOLTIP : string ;
- let MATH_ONLIST_HELPURL : string ;
- let MATH_ONLIST_OPERATOR_AVERAGE : string ;
- let MATH_ONLIST_OPERATOR_MAX : string ;
- let MATH_ONLIST_OPERATOR_MEDIAN : string ;
- let MATH_ONLIST_OPERATOR_MIN : string ;
- let MATH_ONLIST_OPERATOR_MODE : string ;
- let MATH_ONLIST_OPERATOR_RANDOM : string ;
- let MATH_ONLIST_OPERATOR_STD_DEV : string ;
- let MATH_ONLIST_OPERATOR_SUM : string ;
- let MATH_ONLIST_TOOLTIP_AVERAGE : string ;
- let MATH_ONLIST_TOOLTIP_MAX : string ;
- let MATH_ONLIST_TOOLTIP_MEDIAN : string ;
- let MATH_ONLIST_TOOLTIP_MIN : string ;
- let MATH_ONLIST_TOOLTIP_MODE : string ;
- let MATH_ONLIST_TOOLTIP_RANDOM : string ;
- let MATH_ONLIST_TOOLTIP_STD_DEV : string ;
- let MATH_ONLIST_TOOLTIP_SUM : string ;
- let MATH_POWER_SYMBOL : string ;
- let MATH_RANDOM_FLOAT_HELPURL : string ;
- let MATH_RANDOM_FLOAT_TITLE_RANDOM : string ;
- let MATH_RANDOM_FLOAT_TOOLTIP : string ;
- let MATH_RANDOM_INT_HELPURL : string ;
- let MATH_RANDOM_INT_TITLE : string ;
- let MATH_RANDOM_INT_TOOLTIP : string ;
- let MATH_ROUND_HELPURL : string ;
- let MATH_ROUND_OPERATOR_ROUND : string ;
- let MATH_ROUND_OPERATOR_ROUNDDOWN : string ;
- let MATH_ROUND_OPERATOR_ROUNDUP : string ;
- let MATH_ROUND_TOOLTIP : string ;
- let MATH_SINGLE_HELPURL : string ;
- let MATH_SINGLE_OP_ABSOLUTE : string ;
- let MATH_SINGLE_OP_ROOT : string ;
- let MATH_SINGLE_TOOLTIP_ABS : string ;
- let MATH_SINGLE_TOOLTIP_EXP : string ;
- let MATH_SINGLE_TOOLTIP_LN : string ;
- let MATH_SINGLE_TOOLTIP_LOG10 : string ;
- let MATH_SINGLE_TOOLTIP_NEG : string ;
- let MATH_SINGLE_TOOLTIP_POW10 : string ;
- let MATH_SINGLE_TOOLTIP_ROOT : string ;
- let MATH_SUBTRACTION_SYMBOL : string ;
- let MATH_TRIG_ACOS : string ;
- let MATH_TRIG_ASIN : string ;
- let MATH_TRIG_ATAN : string ;
- let MATH_TRIG_COS : string ;
- let MATH_TRIG_HELPURL : string ;
- let MATH_TRIG_SIN : string ;
- let MATH_TRIG_TAN : string ;
- let MATH_TRIG_TOOLTIP_ACOS : string ;
- let MATH_TRIG_TOOLTIP_ASIN : string ;
- let MATH_TRIG_TOOLTIP_ATAN : string ;
- let MATH_TRIG_TOOLTIP_COS : string ;
- let MATH_TRIG_TOOLTIP_SIN : string ;
- let MATH_TRIG_TOOLTIP_TAN : string ;
- let NEW_COLOUR_VARIABLE : string ;
- let NEW_NUMBER_VARIABLE : string ;
- let NEW_STRING_VARIABLE : string ;
- let NEW_VARIABLE : string ;
- let NEW_VARIABLE_TITLE : string ;
- let NEW_VARIABLE_TYPE_TITLE : string ;
- let ORDINAL_NUMBER_SUFFIX : string ;
- let PROCEDURES_ALLOW_STATEMENTS : string ;
- let PROCEDURES_BEFORE_PARAMS : string ;
- let PROCEDURES_CALLNORETURN_HELPURL : string ;
- let PROCEDURES_CALLNORETURN_TOOLTIP : string ;
- let PROCEDURES_CALLRETURN_HELPURL : string ;
- let PROCEDURES_CALLRETURN_TOOLTIP : string ;
- let PROCEDURES_CALL_BEFORE_PARAMS : string ;
- let PROCEDURES_CREATE_DO : string ;
- let PROCEDURES_DEFNORETURN_COMMENT : string ;
- let PROCEDURES_DEFNORETURN_DO : string ;
- let PROCEDURES_DEFNORETURN_HELPURL : string ;
- let PROCEDURES_DEFNORETURN_PROCEDURE : string ;
- let PROCEDURES_DEFNORETURN_TITLE : string ;
- let PROCEDURES_DEFNORETURN_TOOLTIP : string ;
- let PROCEDURES_DEFRETURN_COMMENT : string ;
- let PROCEDURES_DEFRETURN_DO : string ;
- let PROCEDURES_DEFRETURN_HELPURL : string ;
- let PROCEDURES_DEFRETURN_PROCEDURE : string ;
- let PROCEDURES_DEFRETURN_RETURN : string ;
- let PROCEDURES_DEFRETURN_TITLE : string ;
- let PROCEDURES_DEFRETURN_TOOLTIP : string ;
- let PROCEDURES_DEF_DUPLICATE_WARNING : string ;
- let PROCEDURES_HIGHLIGHT_DEF : string ;
- let PROCEDURES_HUE : string ;
- let PROCEDURES_IFRETURN_HELPURL : string ;
- let PROCEDURES_IFRETURN_TOOLTIP : string ;
- let PROCEDURES_IFRETURN_WARNING : string ;
- let PROCEDURES_MUTATORARG_TITLE : string ;
- let PROCEDURES_MUTATORARG_TOOLTIP : string ;
- let PROCEDURES_MUTATORCONTAINER_TITLE : string ;
- let PROCEDURES_MUTATORCONTAINER_TOOLTIP : string ;
- let REDO : string ;
- let REMOVE_COMMENT : string ;
- let RENAME_VARIABLE : string ;
- let RENAME_VARIABLE_TITLE : string ;
- let TEXTS_HUE : string ;
- let TEXT_APPEND_HELPURL : string ;
- let TEXT_APPEND_TITLE : string ;
- let TEXT_APPEND_TOOLTIP : string ;
- let TEXT_APPEND_VARIABLE : string ;
- let TEXT_CHANGECASE_HELPURL : string ;
- let TEXT_CHANGECASE_OPERATOR_LOWERCASE : string ;
- let TEXT_CHANGECASE_OPERATOR_TITLECASE : string ;
- let TEXT_CHANGECASE_OPERATOR_UPPERCASE : string ;
- let TEXT_CHANGECASE_TOOLTIP : string ;
- let TEXT_CHARAT_FIRST : string ;
- let TEXT_CHARAT_FROM_END : string ;
- let TEXT_CHARAT_FROM_START : string ;
- let TEXT_CHARAT_HELPURL : string ;
- let TEXT_CHARAT_LAST : string ;
- let TEXT_CHARAT_RANDOM : string ;
- let TEXT_CHARAT_TAIL : string ;
- let TEXT_CHARAT_TITLE : string ;
- let TEXT_CHARAT_TOOLTIP : string ;
- let TEXT_COUNT_HELPURL : string ;
- let TEXT_COUNT_MESSAGE0 : string ;
- let TEXT_COUNT_TOOLTIP : string ;
- let TEXT_CREATE_JOIN_ITEM_TITLE_ITEM : string ;
- let TEXT_CREATE_JOIN_ITEM_TOOLTIP : string ;
- let TEXT_CREATE_JOIN_TITLE_JOIN : string ;
- let TEXT_CREATE_JOIN_TOOLTIP : string ;
- let TEXT_GET_SUBSTRING_END_FROM_END : string ;
- let TEXT_GET_SUBSTRING_END_FROM_START : string ;
- let TEXT_GET_SUBSTRING_END_LAST : string ;
- let TEXT_GET_SUBSTRING_HELPURL : string ;
- let TEXT_GET_SUBSTRING_INPUT_IN_TEXT : string ;
- let TEXT_GET_SUBSTRING_START_FIRST : string ;
- let TEXT_GET_SUBSTRING_START_FROM_END : string ;
- let TEXT_GET_SUBSTRING_START_FROM_START : string ;
- let TEXT_GET_SUBSTRING_TAIL : string ;
- let TEXT_GET_SUBSTRING_TOOLTIP : string ;
- let TEXT_INDEXOF_HELPURL : string ;
- let TEXT_INDEXOF_OPERATOR_FIRST : string ;
- let TEXT_INDEXOF_OPERATOR_LAST : string ;
- let TEXT_INDEXOF_TITLE : string ;
- let TEXT_INDEXOF_TOOLTIP : string ;
- let TEXT_ISEMPTY_HELPURL : string ;
- let TEXT_ISEMPTY_TITLE : string ;
- let TEXT_ISEMPTY_TOOLTIP : string ;
- let TEXT_JOIN_HELPURL : string ;
- let TEXT_JOIN_TITLE_CREATEWITH : string ;
- let TEXT_JOIN_TOOLTIP : string ;
- let TEXT_LENGTH_HELPURL : string ;
- let TEXT_LENGTH_TITLE : string ;
- let TEXT_LENGTH_TOOLTIP : string ;
- let TEXT_PRINT_HELPURL : string ;
- let TEXT_PRINT_TITLE : string ;
- let TEXT_PRINT_TOOLTIP : string ;
- let TEXT_PROMPT_HELPURL : string ;
- let TEXT_PROMPT_TOOLTIP_NUMBER : string ;
- let TEXT_PROMPT_TOOLTIP_TEXT : string ;
- let TEXT_PROMPT_TYPE_NUMBER : string ;
- let TEXT_PROMPT_TYPE_TEXT : string ;
- let TEXT_REPLACE_HELPURL : string ;
- let TEXT_REPLACE_MESSAGE0 : string ;
- let TEXT_REPLACE_TOOLTIP : string ;
- let TEXT_REVERSE_HELPURL : string ;
- let TEXT_REVERSE_MESSAGE0 : string ;
- let TEXT_REVERSE_TOOLTIP : string ;
- let TEXT_TEXT_HELPURL : string ;
- let TEXT_TEXT_TOOLTIP : string ;
- let TEXT_TRIM_HELPURL : string ;
- let TEXT_TRIM_OPERATOR_BOTH : string ;
- let TEXT_TRIM_OPERATOR_LEFT : string ;
- let TEXT_TRIM_OPERATOR_RIGHT : string ;
- let TEXT_TRIM_TOOLTIP : string ;
- let TODAY : string ;
- let UNDO : string ;
- let UNNAMED_KEY : string ;
- let VARIABLES_DEFAULT_NAME : string ;
- let VARIABLES_DYNAMIC_HUE : string ;
- let VARIABLES_GET_CREATE_SET : string ;
- let VARIABLES_GET_HELPURL : string ;
- let VARIABLES_GET_TOOLTIP : string ;
- let VARIABLES_HUE : string ;
- let VARIABLES_SET : string ;
- let VARIABLES_SET_CREATE_GET : string ;
- let VARIABLES_SET_HELPURL : string ;
- let VARIABLES_SET_TOOLTIP : string ;
- let VARIABLE_ALREADY_EXISTS : string ;
- let VARIABLE_ALREADY_EXISTS_FOR_ANOTHER_TYPE : string ;
- let WORKSPACE_ARIA_LABEL : string ;
- let WORKSPACE_COMMENT_DEFAULT_TEXT : string ;
-}
-
+export const ADD_COMMENT: string;
+export const CANNOT_DELETE_VARIABLE_PROCEDURE: string;
+export const CHANGE_VALUE_TITLE: string;
+export const CLEAN_UP: string;
+export const COLLAPSED_WARNINGS_WARNING: string;
+export const COLLAPSE_ALL: string;
+export const COLLAPSE_BLOCK: string;
+export const COLOUR_BLEND_COLOUR1: string;
+export const COLOUR_BLEND_COLOUR2: string;
+export const COLOUR_BLEND_HELPURL: string;
+export const COLOUR_BLEND_RATIO: string;
+export const COLOUR_BLEND_TITLE: string;
+export const COLOUR_BLEND_TOOLTIP: string;
+export const COLOUR_HUE: string;
+export const COLOUR_PICKER_HELPURL: string;
+export const COLOUR_PICKER_TOOLTIP: string;
+export const COLOUR_RANDOM_HELPURL: string;
+export const COLOUR_RANDOM_TITLE: string;
+export const COLOUR_RANDOM_TOOLTIP: string;
+export const COLOUR_RGB_BLUE: string;
+export const COLOUR_RGB_GREEN: string;
+export const COLOUR_RGB_HELPURL: string;
+export const COLOUR_RGB_RED: string;
+export const COLOUR_RGB_TITLE: string;
+export const COLOUR_RGB_TOOLTIP: string;
+export const CONTROLS_FLOW_STATEMENTS_HELPURL: string;
+export const CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK: string;
+export const CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE: string;
+export const CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK: string;
+export const CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE: string;
+export const CONTROLS_FLOW_STATEMENTS_WARNING: string;
+export const CONTROLS_FOREACH_HELPURL: string;
+export const CONTROLS_FOREACH_INPUT_DO: string;
+export const CONTROLS_FOREACH_TITLE: string;
+export const CONTROLS_FOREACH_TOOLTIP: string;
+export const CONTROLS_FOR_HELPURL: string;
+export const CONTROLS_FOR_INPUT_DO: string;
+export const CONTROLS_FOR_TITLE: string;
+export const CONTROLS_FOR_TOOLTIP: string;
+export const CONTROLS_IF_ELSEIF_TITLE_ELSEIF: string;
+export const CONTROLS_IF_ELSEIF_TOOLTIP: string;
+export const CONTROLS_IF_ELSE_TITLE_ELSE: string;
+export const CONTROLS_IF_ELSE_TOOLTIP: string;
+export const CONTROLS_IF_HELPURL: string;
+export const CONTROLS_IF_IF_TITLE_IF: string;
+export const CONTROLS_IF_IF_TOOLTIP: string;
+export const CONTROLS_IF_MSG_ELSE: string;
+export const CONTROLS_IF_MSG_ELSEIF: string;
+export const CONTROLS_IF_MSG_IF: string;
+export const CONTROLS_IF_MSG_THEN: string;
+export const CONTROLS_IF_TOOLTIP_1: string;
+export const CONTROLS_IF_TOOLTIP_2: string;
+export const CONTROLS_IF_TOOLTIP_3: string;
+export const CONTROLS_IF_TOOLTIP_4: string;
+export const CONTROLS_REPEAT_HELPURL: string;
+export const CONTROLS_REPEAT_INPUT_DO: string;
+export const CONTROLS_REPEAT_TITLE: string;
+export const CONTROLS_REPEAT_TOOLTIP: string;
+export const CONTROLS_WHILEUNTIL_HELPURL: string;
+export const CONTROLS_WHILEUNTIL_INPUT_DO: string;
+export const CONTROLS_WHILEUNTIL_OPERATOR_UNTIL: string;
+export const CONTROLS_WHILEUNTIL_OPERATOR_WHILE: string;
+export const CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL: string;
+export const CONTROLS_WHILEUNTIL_TOOLTIP_WHILE: string;
+export const DELETE_ALL_BLOCKS: string;
+export const DELETE_BLOCK: string;
+export const DELETE_VARIABLE: string;
+export const DELETE_VARIABLE_CONFIRMATION: string;
+export const DELETE_X_BLOCKS: string;
+export const DISABLE_BLOCK: string;
+export const DUPLICATE_BLOCK: string;
+export const DUPLICATE_COMMENT: string;
+export const ENABLE_BLOCK: string;
+export const EXPAND_ALL: string;
+export const EXPAND_BLOCK: string;
+export const EXTERNAL_INPUTS: string;
+export const HELP: string;
+export const INLINE_INPUTS: string;
+export const IOS_CANCEL: string;
+export const IOS_ERROR: string;
+export const IOS_OK: string;
+export const IOS_PROCEDURES_ADD_INPUT: string;
+export const IOS_PROCEDURES_ALLOW_STATEMENTS: string;
+export const IOS_PROCEDURES_DUPLICATE_INPUTS_ERROR: string;
+export const IOS_PROCEDURES_INPUTS: string;
+export const IOS_VARIABLES_ADD_BUTTON: string;
+export const IOS_VARIABLES_ADD_VARIABLE: string;
+export const IOS_VARIABLES_DELETE_BUTTON: string;
+export const IOS_VARIABLES_EMPTY_NAME_ERROR: string;
+export const IOS_VARIABLES_RENAME_BUTTON: string;
+export const IOS_VARIABLES_VARIABLE_NAME: string;
+export const LISTS_CREATE_EMPTY_HELPURL: string;
+export const LISTS_CREATE_EMPTY_TITLE: string;
+export const LISTS_CREATE_EMPTY_TOOLTIP: string;
+export const LISTS_CREATE_WITH_CONTAINER_TITLE_ADD: string;
+export const LISTS_CREATE_WITH_CONTAINER_TOOLTIP: string;
+export const LISTS_CREATE_WITH_HELPURL: string;
+export const LISTS_CREATE_WITH_INPUT_WITH: string;
+export const LISTS_CREATE_WITH_ITEM_TITLE: string;
+export const LISTS_CREATE_WITH_ITEM_TOOLTIP: string;
+export const LISTS_CREATE_WITH_TOOLTIP: string;
+export const LISTS_GET_INDEX_FIRST: string;
+export const LISTS_GET_INDEX_FROM_END: string;
+export const LISTS_GET_INDEX_FROM_START: string;
+export const LISTS_GET_INDEX_GET: string;
+export const LISTS_GET_INDEX_GET_REMOVE: string;
+export const LISTS_GET_INDEX_HELPURL: string;
+export const LISTS_GET_INDEX_INPUT_IN_LIST: string;
+export const LISTS_GET_INDEX_LAST: string;
+export const LISTS_GET_INDEX_RANDOM: string;
+export const LISTS_GET_INDEX_REMOVE: string;
+export const LISTS_GET_INDEX_TAIL: string;
+export const LISTS_GET_INDEX_TOOLTIP_GET_FIRST: string;
+export const LISTS_GET_INDEX_TOOLTIP_GET_FROM: string;
+export const LISTS_GET_INDEX_TOOLTIP_GET_LAST: string;
+export const LISTS_GET_INDEX_TOOLTIP_GET_RANDOM: string;
+export const LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST: string;
+export const LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM: string;
+export const LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST: string;
+export const LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM: string;
+export const LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST: string;
+export const LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM: string;
+export const LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST: string;
+export const LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM: string;
+export const LISTS_GET_SUBLIST_END_FROM_END: string;
+export const LISTS_GET_SUBLIST_END_FROM_START: string;
+export const LISTS_GET_SUBLIST_END_LAST: string;
+export const LISTS_GET_SUBLIST_HELPURL: string;
+export const LISTS_GET_SUBLIST_INPUT_IN_LIST: string;
+export const LISTS_GET_SUBLIST_START_FIRST: string;
+export const LISTS_GET_SUBLIST_START_FROM_END: string;
+export const LISTS_GET_SUBLIST_START_FROM_START: string;
+export const LISTS_GET_SUBLIST_TAIL: string;
+export const LISTS_GET_SUBLIST_TOOLTIP: string;
+export const LISTS_HUE: string;
+export const LISTS_INDEX_FROM_END_TOOLTIP: string;
+export const LISTS_INDEX_FROM_START_TOOLTIP: string;
+export const LISTS_INDEX_OF_FIRST: string;
+export const LISTS_INDEX_OF_HELPURL: string;
+export const LISTS_INDEX_OF_INPUT_IN_LIST: string;
+export const LISTS_INDEX_OF_LAST: string;
+export const LISTS_INDEX_OF_TOOLTIP: string;
+export const LISTS_INLIST: string;
+export const LISTS_ISEMPTY_HELPURL: string;
+export const LISTS_ISEMPTY_TITLE: string;
+export const LISTS_ISEMPTY_TOOLTIP: string;
+export const LISTS_LENGTH_HELPURL: string;
+export const LISTS_LENGTH_TITLE: string;
+export const LISTS_LENGTH_TOOLTIP: string;
+export const LISTS_REPEAT_HELPURL: string;
+export const LISTS_REPEAT_TITLE: string;
+export const LISTS_REPEAT_TOOLTIP: string;
+export const LISTS_REVERSE_HELPURL: string;
+export const LISTS_REVERSE_MESSAGE0: string;
+export const LISTS_REVERSE_TOOLTIP: string;
+export const LISTS_SET_INDEX_HELPURL: string;
+export const LISTS_SET_INDEX_INPUT_IN_LIST: string;
+export const LISTS_SET_INDEX_INPUT_TO: string;
+export const LISTS_SET_INDEX_INSERT: string;
+export const LISTS_SET_INDEX_SET: string;
+export const LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST: string;
+export const LISTS_SET_INDEX_TOOLTIP_INSERT_FROM: string;
+export const LISTS_SET_INDEX_TOOLTIP_INSERT_LAST: string;
+export const LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM: string;
+export const LISTS_SET_INDEX_TOOLTIP_SET_FIRST: string;
+export const LISTS_SET_INDEX_TOOLTIP_SET_FROM: string;
+export const LISTS_SET_INDEX_TOOLTIP_SET_LAST: string;
+export const LISTS_SET_INDEX_TOOLTIP_SET_RANDOM: string;
+export const LISTS_SORT_HELPURL: string;
+export const LISTS_SORT_ORDER_ASCENDING: string;
+export const LISTS_SORT_ORDER_DESCENDING: string;
+export const LISTS_SORT_TITLE: string;
+export const LISTS_SORT_TOOLTIP: string;
+export const LISTS_SORT_TYPE_IGNORECASE: string;
+export const LISTS_SORT_TYPE_NUMERIC: string;
+export const LISTS_SORT_TYPE_TEXT: string;
+export const LISTS_SPLIT_HELPURL: string;
+export const LISTS_SPLIT_LIST_FROM_TEXT: string;
+export const LISTS_SPLIT_TEXT_FROM_LIST: string;
+export const LISTS_SPLIT_TOOLTIP_JOIN: string;
+export const LISTS_SPLIT_TOOLTIP_SPLIT: string;
+export const LISTS_SPLIT_WITH_DELIMITER: string;
+export const LOGIC_BOOLEAN_FALSE: string;
+export const LOGIC_BOOLEAN_HELPURL: string;
+export const LOGIC_BOOLEAN_TOOLTIP: string;
+export const LOGIC_BOOLEAN_TRUE: string;
+export const LOGIC_COMPARE_HELPURL: string;
+export const LOGIC_COMPARE_TOOLTIP_EQ: string;
+export const LOGIC_COMPARE_TOOLTIP_GT: string;
+export const LOGIC_COMPARE_TOOLTIP_GTE: string;
+export const LOGIC_COMPARE_TOOLTIP_LT: string;
+export const LOGIC_COMPARE_TOOLTIP_LTE: string;
+export const LOGIC_COMPARE_TOOLTIP_NEQ: string;
+export const LOGIC_HUE: string;
+export const LOGIC_NEGATE_HELPURL: string;
+export const LOGIC_NEGATE_TITLE: string;
+export const LOGIC_NEGATE_TOOLTIP: string;
+export const LOGIC_NULL: string;
+export const LOGIC_NULL_HELPURL: string;
+export const LOGIC_NULL_TOOLTIP: string;
+export const LOGIC_OPERATION_AND: string;
+export const LOGIC_OPERATION_HELPURL: string;
+export const LOGIC_OPERATION_OR: string;
+export const LOGIC_OPERATION_TOOLTIP_AND: string;
+export const LOGIC_OPERATION_TOOLTIP_OR: string;
+export const LOGIC_TERNARY_CONDITION: string;
+export const LOGIC_TERNARY_HELPURL: string;
+export const LOGIC_TERNARY_IF_FALSE: string;
+export const LOGIC_TERNARY_IF_TRUE: string;
+export const LOGIC_TERNARY_TOOLTIP: string;
+export const LOOPS_HUE: string;
+export const MATH_ADDITION_SYMBOL: string;
+export const MATH_ARITHMETIC_HELPURL: string;
+export const MATH_ARITHMETIC_TOOLTIP_ADD: string;
+export const MATH_ARITHMETIC_TOOLTIP_DIVIDE: string;
+export const MATH_ARITHMETIC_TOOLTIP_MINUS: string;
+export const MATH_ARITHMETIC_TOOLTIP_MULTIPLY: string;
+export const MATH_ARITHMETIC_TOOLTIP_POWER: string;
+export const MATH_ATAN2_HELPURL: string;
+export const MATH_ATAN2_TITLE: string;
+export const MATH_ATAN2_TOOLTIP: string;
+export const MATH_CHANGE_HELPURL: string;
+export const MATH_CHANGE_TITLE: string;
+export const MATH_CHANGE_TITLE_ITEM: string;
+export const MATH_CHANGE_TOOLTIP: string;
+export const MATH_CONSTANT_HELPURL: string;
+export const MATH_CONSTANT_TOOLTIP: string;
+export const MATH_CONSTRAIN_HELPURL: string;
+export const MATH_CONSTRAIN_TITLE: string;
+export const MATH_CONSTRAIN_TOOLTIP: string;
+export const MATH_DIVISION_SYMBOL: string;
+export const MATH_HUE: string;
+export const MATH_IS_DIVISIBLE_BY: string;
+export const MATH_IS_EVEN: string;
+export const MATH_IS_NEGATIVE: string;
+export const MATH_IS_ODD: string;
+export const MATH_IS_POSITIVE: string;
+export const MATH_IS_PRIME: string;
+export const MATH_IS_TOOLTIP: string;
+export const MATH_IS_WHOLE: string;
+export const MATH_MODULO_HELPURL: string;
+export const MATH_MODULO_TITLE: string;
+export const MATH_MODULO_TOOLTIP: string;
+export const MATH_MULTIPLICATION_SYMBOL: string;
+export const MATH_NUMBER_HELPURL: string;
+export const MATH_NUMBER_TOOLTIP: string;
+export const MATH_ONLIST_HELPURL: string;
+export const MATH_ONLIST_OPERATOR_AVERAGE: string;
+export const MATH_ONLIST_OPERATOR_MAX: string;
+export const MATH_ONLIST_OPERATOR_MEDIAN: string;
+export const MATH_ONLIST_OPERATOR_MIN: string;
+export const MATH_ONLIST_OPERATOR_MODE: string;
+export const MATH_ONLIST_OPERATOR_RANDOM: string;
+export const MATH_ONLIST_OPERATOR_STD_DEV: string;
+export const MATH_ONLIST_OPERATOR_SUM: string;
+export const MATH_ONLIST_TOOLTIP_AVERAGE: string;
+export const MATH_ONLIST_TOOLTIP_MAX: string;
+export const MATH_ONLIST_TOOLTIP_MEDIAN: string;
+export const MATH_ONLIST_TOOLTIP_MIN: string;
+export const MATH_ONLIST_TOOLTIP_MODE: string;
+export const MATH_ONLIST_TOOLTIP_RANDOM: string;
+export const MATH_ONLIST_TOOLTIP_STD_DEV: string;
+export const MATH_ONLIST_TOOLTIP_SUM: string;
+export const MATH_POWER_SYMBOL: string;
+export const MATH_RANDOM_FLOAT_HELPURL: string;
+export const MATH_RANDOM_FLOAT_TITLE_RANDOM: string;
+export const MATH_RANDOM_FLOAT_TOOLTIP: string;
+export const MATH_RANDOM_INT_HELPURL: string;
+export const MATH_RANDOM_INT_TITLE: string;
+export const MATH_RANDOM_INT_TOOLTIP: string;
+export const MATH_ROUND_HELPURL: string;
+export const MATH_ROUND_OPERATOR_ROUND: string;
+export const MATH_ROUND_OPERATOR_ROUNDDOWN: string;
+export const MATH_ROUND_OPERATOR_ROUNDUP: string;
+export const MATH_ROUND_TOOLTIP: string;
+export const MATH_SINGLE_HELPURL: string;
+export const MATH_SINGLE_OP_ABSOLUTE: string;
+export const MATH_SINGLE_OP_ROOT: string;
+export const MATH_SINGLE_TOOLTIP_ABS: string;
+export const MATH_SINGLE_TOOLTIP_EXP: string;
+export const MATH_SINGLE_TOOLTIP_LN: string;
+export const MATH_SINGLE_TOOLTIP_LOG10: string;
+export const MATH_SINGLE_TOOLTIP_NEG: string;
+export const MATH_SINGLE_TOOLTIP_POW10: string;
+export const MATH_SINGLE_TOOLTIP_ROOT: string;
+export const MATH_SUBTRACTION_SYMBOL: string;
+export const MATH_TRIG_ACOS: string;
+export const MATH_TRIG_ASIN: string;
+export const MATH_TRIG_ATAN: string;
+export const MATH_TRIG_COS: string;
+export const MATH_TRIG_HELPURL: string;
+export const MATH_TRIG_SIN: string;
+export const MATH_TRIG_TAN: string;
+export const MATH_TRIG_TOOLTIP_ACOS: string;
+export const MATH_TRIG_TOOLTIP_ASIN: string;
+export const MATH_TRIG_TOOLTIP_ATAN: string;
+export const MATH_TRIG_TOOLTIP_COS: string;
+export const MATH_TRIG_TOOLTIP_SIN: string;
+export const MATH_TRIG_TOOLTIP_TAN: string;
+export const NEW_COLOUR_VARIABLE: string;
+export const NEW_NUMBER_VARIABLE: string;
+export const NEW_STRING_VARIABLE: string;
+export const NEW_VARIABLE: string;
+export const NEW_VARIABLE_TITLE: string;
+export const NEW_VARIABLE_TYPE_TITLE: string;
+export const ORDINAL_NUMBER_SUFFIX: string;
+export const PROCEDURES_ALLOW_STATEMENTS: string;
+export const PROCEDURES_BEFORE_PARAMS: string;
+export const PROCEDURES_CALLNORETURN_HELPURL: string;
+export const PROCEDURES_CALLNORETURN_TOOLTIP: string;
+export const PROCEDURES_CALLRETURN_HELPURL: string;
+export const PROCEDURES_CALLRETURN_TOOLTIP: string;
+export const PROCEDURES_CALL_BEFORE_PARAMS: string;
+export const PROCEDURES_CREATE_DO: string;
+export const PROCEDURES_DEFNORETURN_COMMENT: string;
+export const PROCEDURES_DEFNORETURN_DO: string;
+export const PROCEDURES_DEFNORETURN_HELPURL: string;
+export const PROCEDURES_DEFNORETURN_PROCEDURE: string;
+export const PROCEDURES_DEFNORETURN_TITLE: string;
+export const PROCEDURES_DEFNORETURN_TOOLTIP: string;
+export const PROCEDURES_DEFRETURN_COMMENT: string;
+export const PROCEDURES_DEFRETURN_DO: string;
+export const PROCEDURES_DEFRETURN_HELPURL: string;
+export const PROCEDURES_DEFRETURN_PROCEDURE: string;
+export const PROCEDURES_DEFRETURN_RETURN: string;
+export const PROCEDURES_DEFRETURN_TITLE: string;
+export const PROCEDURES_DEFRETURN_TOOLTIP: string;
+export const PROCEDURES_DEF_DUPLICATE_WARNING: string;
+export const PROCEDURES_HIGHLIGHT_DEF: string;
+export const PROCEDURES_HUE: string;
+export const PROCEDURES_IFRETURN_HELPURL: string;
+export const PROCEDURES_IFRETURN_TOOLTIP: string;
+export const PROCEDURES_IFRETURN_WARNING: string;
+export const PROCEDURES_MUTATORARG_TITLE: string;
+export const PROCEDURES_MUTATORARG_TOOLTIP: string;
+export const PROCEDURES_MUTATORCONTAINER_TITLE: string;
+export const PROCEDURES_MUTATORCONTAINER_TOOLTIP: string;
+export const REDO: string;
+export const REMOVE_COMMENT: string;
+export const RENAME_VARIABLE: string;
+export const RENAME_VARIABLE_TITLE: string;
+export const TEXTS_HUE: string;
+export const TEXT_APPEND_HELPURL: string;
+export const TEXT_APPEND_TITLE: string;
+export const TEXT_APPEND_TOOLTIP: string;
+export const TEXT_APPEND_VARIABLE: string;
+export const TEXT_CHANGECASE_HELPURL: string;
+export const TEXT_CHANGECASE_OPERATOR_LOWERCASE: string;
+export const TEXT_CHANGECASE_OPERATOR_TITLECASE: string;
+export const TEXT_CHANGECASE_OPERATOR_UPPERCASE: string;
+export const TEXT_CHANGECASE_TOOLTIP: string;
+export const TEXT_CHARAT_FIRST: string;
+export const TEXT_CHARAT_FROM_END: string;
+export const TEXT_CHARAT_FROM_START: string;
+export const TEXT_CHARAT_HELPURL: string;
+export const TEXT_CHARAT_LAST: string;
+export const TEXT_CHARAT_RANDOM: string;
+export const TEXT_CHARAT_TAIL: string;
+export const TEXT_CHARAT_TITLE: string;
+export const TEXT_CHARAT_TOOLTIP: string;
+export const TEXT_COUNT_HELPURL: string;
+export const TEXT_COUNT_MESSAGE0: string;
+export const TEXT_COUNT_TOOLTIP: string;
+export const TEXT_CREATE_JOIN_ITEM_TITLE_ITEM: string;
+export const TEXT_CREATE_JOIN_ITEM_TOOLTIP: string;
+export const TEXT_CREATE_JOIN_TITLE_JOIN: string;
+export const TEXT_CREATE_JOIN_TOOLTIP: string;
+export const TEXT_GET_SUBSTRING_END_FROM_END: string;
+export const TEXT_GET_SUBSTRING_END_FROM_START: string;
+export const TEXT_GET_SUBSTRING_END_LAST: string;
+export const TEXT_GET_SUBSTRING_HELPURL: string;
+export const TEXT_GET_SUBSTRING_INPUT_IN_TEXT: string;
+export const TEXT_GET_SUBSTRING_START_FIRST: string;
+export const TEXT_GET_SUBSTRING_START_FROM_END: string;
+export const TEXT_GET_SUBSTRING_START_FROM_START: string;
+export const TEXT_GET_SUBSTRING_TAIL: string;
+export const TEXT_GET_SUBSTRING_TOOLTIP: string;
+export const TEXT_INDEXOF_HELPURL: string;
+export const TEXT_INDEXOF_OPERATOR_FIRST: string;
+export const TEXT_INDEXOF_OPERATOR_LAST: string;
+export const TEXT_INDEXOF_TITLE: string;
+export const TEXT_INDEXOF_TOOLTIP: string;
+export const TEXT_ISEMPTY_HELPURL: string;
+export const TEXT_ISEMPTY_TITLE: string;
+export const TEXT_ISEMPTY_TOOLTIP: string;
+export const TEXT_JOIN_HELPURL: string;
+export const TEXT_JOIN_TITLE_CREATEWITH: string;
+export const TEXT_JOIN_TOOLTIP: string;
+export const TEXT_LENGTH_HELPURL: string;
+export const TEXT_LENGTH_TITLE: string;
+export const TEXT_LENGTH_TOOLTIP: string;
+export const TEXT_PRINT_HELPURL: string;
+export const TEXT_PRINT_TITLE: string;
+export const TEXT_PRINT_TOOLTIP: string;
+export const TEXT_PROMPT_HELPURL: string;
+export const TEXT_PROMPT_TOOLTIP_NUMBER: string;
+export const TEXT_PROMPT_TOOLTIP_TEXT: string;
+export const TEXT_PROMPT_TYPE_NUMBER: string;
+export const TEXT_PROMPT_TYPE_TEXT: string;
+export const TEXT_REPLACE_HELPURL: string;
+export const TEXT_REPLACE_MESSAGE0: string;
+export const TEXT_REPLACE_TOOLTIP: string;
+export const TEXT_REVERSE_HELPURL: string;
+export const TEXT_REVERSE_MESSAGE0: string;
+export const TEXT_REVERSE_TOOLTIP: string;
+export const TEXT_TEXT_HELPURL: string;
+export const TEXT_TEXT_TOOLTIP: string;
+export const TEXT_TRIM_HELPURL: string;
+export const TEXT_TRIM_OPERATOR_BOTH: string;
+export const TEXT_TRIM_OPERATOR_LEFT: string;
+export const TEXT_TRIM_OPERATOR_RIGHT: string;
+export const TEXT_TRIM_TOOLTIP: string;
+export const TODAY: string;
+export const UNDO: string;
+export const UNNAMED_KEY: string;
+export const VARIABLES_DEFAULT_NAME: string;
+export const VARIABLES_DYNAMIC_HUE: string;
+export const VARIABLES_GET_CREATE_SET: string;
+export const VARIABLES_GET_HELPURL: string;
+export const VARIABLES_GET_TOOLTIP: string;
+export const VARIABLES_HUE: string;
+export const VARIABLES_SET: string;
+export const VARIABLES_SET_CREATE_GET: string;
+export const VARIABLES_SET_HELPURL: string;
+export const VARIABLES_SET_TOOLTIP: string;
+export const VARIABLE_ALREADY_EXISTS: string;
+export const VARIABLE_ALREADY_EXISTS_FOR_ANOTHER_TYPE: string;
+export const WORKSPACE_ARIA_LABEL: string;
+export const WORKSPACE_COMMENT_DEFAULT_TEXT: string;
diff --git a/typings/msg/my.d.ts b/typings/msg/my.d.ts
new file mode 100644
index 00000000000..5f2d13710bd
--- /dev/null
+++ b/typings/msg/my.d.ts
@@ -0,0 +1,8 @@
+/**
+ * @license
+ * Copyright 2022 Google LLC
+ * SPDX-License-Identifier: Apache-2.0
+ */
+
+export * from './msg';
+
diff --git a/typings/msg/mzn.d.ts b/typings/msg/mzn.d.ts
new file mode 100644
index 00000000000..5f2d13710bd
--- /dev/null
+++ b/typings/msg/mzn.d.ts
@@ -0,0 +1,8 @@
+/**
+ * @license
+ * Copyright 2022 Google LLC
+ * SPDX-License-Identifier: Apache-2.0
+ */
+
+export * from './msg';
+
diff --git a/typings/msg/nb.d.ts b/typings/msg/nb.d.ts
index 42aaa1b2579..5f2d13710bd 100644
--- a/typings/msg/nb.d.ts
+++ b/typings/msg/nb.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly nb locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/ne.d.ts b/typings/msg/ne.d.ts
new file mode 100644
index 00000000000..5f2d13710bd
--- /dev/null
+++ b/typings/msg/ne.d.ts
@@ -0,0 +1,8 @@
+/**
+ * @license
+ * Copyright 2022 Google LLC
+ * SPDX-License-Identifier: Apache-2.0
+ */
+
+export * from './msg';
+
diff --git a/typings/msg/nl.d.ts b/typings/msg/nl.d.ts
index 5d383fb0c81..5f2d13710bd 100644
--- a/typings/msg/nl.d.ts
+++ b/typings/msg/nl.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly nl locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/oc.d.ts b/typings/msg/oc.d.ts
index f8eabb76e2f..5f2d13710bd 100644
--- a/typings/msg/oc.d.ts
+++ b/typings/msg/oc.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly oc locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/olo.d.ts b/typings/msg/olo.d.ts
new file mode 100644
index 00000000000..5f2d13710bd
--- /dev/null
+++ b/typings/msg/olo.d.ts
@@ -0,0 +1,8 @@
+/**
+ * @license
+ * Copyright 2022 Google LLC
+ * SPDX-License-Identifier: Apache-2.0
+ */
+
+export * from './msg';
+
diff --git a/typings/msg/pa.d.ts b/typings/msg/pa.d.ts
new file mode 100644
index 00000000000..5f2d13710bd
--- /dev/null
+++ b/typings/msg/pa.d.ts
@@ -0,0 +1,8 @@
+/**
+ * @license
+ * Copyright 2022 Google LLC
+ * SPDX-License-Identifier: Apache-2.0
+ */
+
+export * from './msg';
+
diff --git a/typings/msg/pl.d.ts b/typings/msg/pl.d.ts
index 957f3820da2..5f2d13710bd 100644
--- a/typings/msg/pl.d.ts
+++ b/typings/msg/pl.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly pl locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/pms.d.ts b/typings/msg/pms.d.ts
index 35df33e31c5..5f2d13710bd 100644
--- a/typings/msg/pms.d.ts
+++ b/typings/msg/pms.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly pms locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/ps.d.ts b/typings/msg/ps.d.ts
new file mode 100644
index 00000000000..5f2d13710bd
--- /dev/null
+++ b/typings/msg/ps.d.ts
@@ -0,0 +1,8 @@
+/**
+ * @license
+ * Copyright 2022 Google LLC
+ * SPDX-License-Identifier: Apache-2.0
+ */
+
+export * from './msg';
+
diff --git a/typings/msg/pt-br.d.ts b/typings/msg/pt-br.d.ts
index 065d639cda4..5f2d13710bd 100644
--- a/typings/msg/pt-br.d.ts
+++ b/typings/msg/pt-br.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly pt-br locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/pt.d.ts b/typings/msg/pt.d.ts
index f89879cad08..5f2d13710bd 100644
--- a/typings/msg/pt.d.ts
+++ b/typings/msg/pt.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly pt locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/ro.d.ts b/typings/msg/ro.d.ts
index f2183fa49fd..5f2d13710bd 100644
--- a/typings/msg/ro.d.ts
+++ b/typings/msg/ro.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly ro locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/ru.d.ts b/typings/msg/ru.d.ts
index 95ffc830019..5f2d13710bd 100644
--- a/typings/msg/ru.d.ts
+++ b/typings/msg/ru.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly ru locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/sc.d.ts b/typings/msg/sc.d.ts
index 2d5afcbdef9..5f2d13710bd 100644
--- a/typings/msg/sc.d.ts
+++ b/typings/msg/sc.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly sc locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/sco.d.ts b/typings/msg/sco.d.ts
new file mode 100644
index 00000000000..5f2d13710bd
--- /dev/null
+++ b/typings/msg/sco.d.ts
@@ -0,0 +1,8 @@
+/**
+ * @license
+ * Copyright 2022 Google LLC
+ * SPDX-License-Identifier: Apache-2.0
+ */
+
+export * from './msg';
+
diff --git a/typings/msg/sd.d.ts b/typings/msg/sd.d.ts
index cafc9789364..5f2d13710bd 100644
--- a/typings/msg/sd.d.ts
+++ b/typings/msg/sd.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly sd locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/shn.d.ts b/typings/msg/shn.d.ts
index 07a531329ea..5f2d13710bd 100644
--- a/typings/msg/shn.d.ts
+++ b/typings/msg/shn.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly shn locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/si.d.ts b/typings/msg/si.d.ts
new file mode 100644
index 00000000000..5f2d13710bd
--- /dev/null
+++ b/typings/msg/si.d.ts
@@ -0,0 +1,8 @@
+/**
+ * @license
+ * Copyright 2022 Google LLC
+ * SPDX-License-Identifier: Apache-2.0
+ */
+
+export * from './msg';
+
diff --git a/typings/msg/sk.d.ts b/typings/msg/sk.d.ts
index 3c26e48bc45..5f2d13710bd 100644
--- a/typings/msg/sk.d.ts
+++ b/typings/msg/sk.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly sk locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/skr-arab.d.ts b/typings/msg/skr-arab.d.ts
index 4ddb30fd81d..5f2d13710bd 100644
--- a/typings/msg/skr-arab.d.ts
+++ b/typings/msg/skr-arab.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly skr-arab locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/sl.d.ts b/typings/msg/sl.d.ts
index 51f1f568f9a..5f2d13710bd 100644
--- a/typings/msg/sl.d.ts
+++ b/typings/msg/sl.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly sl locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/smn.d.ts b/typings/msg/smn.d.ts
new file mode 100644
index 00000000000..5f2d13710bd
--- /dev/null
+++ b/typings/msg/smn.d.ts
@@ -0,0 +1,8 @@
+/**
+ * @license
+ * Copyright 2022 Google LLC
+ * SPDX-License-Identifier: Apache-2.0
+ */
+
+export * from './msg';
+
diff --git a/typings/msg/sq.d.ts b/typings/msg/sq.d.ts
index e7997e2f447..5f2d13710bd 100644
--- a/typings/msg/sq.d.ts
+++ b/typings/msg/sq.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly sq locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/sr-latn.d.ts b/typings/msg/sr-latn.d.ts
index f9bf0645e20..5f2d13710bd 100644
--- a/typings/msg/sr-latn.d.ts
+++ b/typings/msg/sr-latn.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly sr-latn locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/sr.d.ts b/typings/msg/sr.d.ts
index 7d6ea16a5f0..5f2d13710bd 100644
--- a/typings/msg/sr.d.ts
+++ b/typings/msg/sr.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly sr locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/sv.d.ts b/typings/msg/sv.d.ts
index 11018f261a3..5f2d13710bd 100644
--- a/typings/msg/sv.d.ts
+++ b/typings/msg/sv.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly sv locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/sw.d.ts b/typings/msg/sw.d.ts
new file mode 100644
index 00000000000..5f2d13710bd
--- /dev/null
+++ b/typings/msg/sw.d.ts
@@ -0,0 +1,8 @@
+/**
+ * @license
+ * Copyright 2022 Google LLC
+ * SPDX-License-Identifier: Apache-2.0
+ */
+
+export * from './msg';
+
diff --git a/typings/msg/ta.d.ts b/typings/msg/ta.d.ts
index d74bd3c485e..5f2d13710bd 100644
--- a/typings/msg/ta.d.ts
+++ b/typings/msg/ta.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly ta locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/tcy.d.ts b/typings/msg/tcy.d.ts
index 64278359d9d..5f2d13710bd 100644
--- a/typings/msg/tcy.d.ts
+++ b/typings/msg/tcy.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly tcy locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/te.d.ts b/typings/msg/te.d.ts
index c7acfb0c89b..5f2d13710bd 100644
--- a/typings/msg/te.d.ts
+++ b/typings/msg/te.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly te locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/th.d.ts b/typings/msg/th.d.ts
index bf77eae8be8..5f2d13710bd 100644
--- a/typings/msg/th.d.ts
+++ b/typings/msg/th.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly th locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/ti.d.ts b/typings/msg/ti.d.ts
new file mode 100644
index 00000000000..5f2d13710bd
--- /dev/null
+++ b/typings/msg/ti.d.ts
@@ -0,0 +1,8 @@
+/**
+ * @license
+ * Copyright 2022 Google LLC
+ * SPDX-License-Identifier: Apache-2.0
+ */
+
+export * from './msg';
+
diff --git a/typings/msg/tl.d.ts b/typings/msg/tl.d.ts
index 0d51a38f350..5f2d13710bd 100644
--- a/typings/msg/tl.d.ts
+++ b/typings/msg/tl.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly tl locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/tlh.d.ts b/typings/msg/tlh.d.ts
index 5eb07eb8d4a..5f2d13710bd 100644
--- a/typings/msg/tlh.d.ts
+++ b/typings/msg/tlh.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly tlh locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/tr.d.ts b/typings/msg/tr.d.ts
index 2b1a29a0275..5f2d13710bd 100644
--- a/typings/msg/tr.d.ts
+++ b/typings/msg/tr.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly tr locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/ug-arab.d.ts b/typings/msg/ug-arab.d.ts
index f9445a56043..5f2d13710bd 100644
--- a/typings/msg/ug-arab.d.ts
+++ b/typings/msg/ug-arab.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly ug-arab locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/uk.d.ts b/typings/msg/uk.d.ts
index 1250e6cb1ff..5f2d13710bd 100644
--- a/typings/msg/uk.d.ts
+++ b/typings/msg/uk.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly uk locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/ur.d.ts b/typings/msg/ur.d.ts
index b944aad7fad..5f2d13710bd 100644
--- a/typings/msg/ur.d.ts
+++ b/typings/msg/ur.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly ur locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/uz.d.ts b/typings/msg/uz.d.ts
new file mode 100644
index 00000000000..5f2d13710bd
--- /dev/null
+++ b/typings/msg/uz.d.ts
@@ -0,0 +1,8 @@
+/**
+ * @license
+ * Copyright 2022 Google LLC
+ * SPDX-License-Identifier: Apache-2.0
+ */
+
+export * from './msg';
+
diff --git a/typings/msg/vi.d.ts b/typings/msg/vi.d.ts
index 86a0e7d6ff1..5f2d13710bd 100644
--- a/typings/msg/vi.d.ts
+++ b/typings/msg/vi.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly vi locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/xmf.d.ts b/typings/msg/xmf.d.ts
index e230058ac29..5f2d13710bd 100644
--- a/typings/msg/xmf.d.ts
+++ b/typings/msg/xmf.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly xmf locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/yo.d.ts b/typings/msg/yo.d.ts
index 29120ab8d0c..5f2d13710bd 100644
--- a/typings/msg/yo.d.ts
+++ b/typings/msg/yo.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly yo locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/yue.d.ts b/typings/msg/yue.d.ts
new file mode 100644
index 00000000000..5f2d13710bd
--- /dev/null
+++ b/typings/msg/yue.d.ts
@@ -0,0 +1,8 @@
+/**
+ * @license
+ * Copyright 2022 Google LLC
+ * SPDX-License-Identifier: Apache-2.0
+ */
+
+export * from './msg';
+
diff --git a/typings/msg/zgh.d.ts b/typings/msg/zgh.d.ts
index be1d163ea99..5f2d13710bd 100644
--- a/typings/msg/zgh.d.ts
+++ b/typings/msg/zgh.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly zgh locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/zh-hans.d.ts b/typings/msg/zh-hans.d.ts
index 938f55356c1..5f2d13710bd 100644
--- a/typings/msg/zh-hans.d.ts
+++ b/typings/msg/zh-hans.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly zh-hans locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';
diff --git a/typings/msg/zh-hant.d.ts b/typings/msg/zh-hant.d.ts
index f2917aac6c5..5f2d13710bd 100644
--- a/typings/msg/zh-hant.d.ts
+++ b/typings/msg/zh-hant.d.ts
@@ -1,16 +1,8 @@
/**
* @license
- * Copyright 2020 Google LLC
+ * Copyright 2022 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
-/**
- * @fileoverview Type definitions for the Blockly zh-hant locale.
- * @author samelh@google.com (Sam El-Husseini)
- */
-
-///
-
-import BlocklyMsg = Blockly.Msg;
-export = BlocklyMsg;
+export * from './msg';