vue-api-request-builder 0.2.6 → 0.2.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.es.js CHANGED
@@ -6,13 +6,13 @@ var Tn = (t) => {
6
6
  };
7
7
  var jr = (t, e, n) => e in t ? Br(t, e, { enumerable: !0, configurable: !0, writable: !0, value: n }) : t[e] = n;
8
8
  var h = (t, e, n) => jr(t, typeof e != "symbol" ? e + "" : e, n), Mt = (t, e, n) => e.has(t) || Tn("Cannot " + n);
9
- var K = (t, e, n) => (Mt(t, e, "read from private field"), n ? n.call(t) : e.get(t)), Ce = (t, e, n) => e.has(t) ? Tn("Cannot add the same private member more than once") : e instanceof WeakSet ? e.add(t) : e.set(t, n), re = (t, e, n, a) => (Mt(t, e, "write to private field"), a ? a.call(t, n) : e.set(t, n), n), Ot = (t, e, n) => (Mt(t, e, "access private method"), n);
9
+ var K = (t, e, n) => (Mt(t, e, "read from private field"), n ? n.call(t) : e.get(t)), Ce = (t, e, n) => e.has(t) ? Tn("Cannot add the same private member more than once") : e instanceof WeakSet ? e.add(t) : e.set(t, n), se = (t, e, n, a) => (Mt(t, e, "write to private field"), a ? a.call(t, n) : e.set(t, n), n), Ot = (t, e, n) => (Mt(t, e, "access private method"), n);
10
10
  var Ln = (t, e, n) => Lr(Tr(t), n, e);
11
- import { defineComponent as st, ref as L, watch as Qe, resolveComponent as j, createElementBlock as J, openBlock as M, createElementVNode as N, createCommentVNode as se, createBlock as $e, createVNode as S, withCtx as R, createTextVNode as D, toDisplayString as Ee, Fragment as _n, renderList as va, computed as Gt, useModel as Ca, normalizeStyle as Mr, withDirectives as Or, vModelText as Gr, nextTick as Fr, onMounted as Dr, unref as Ur } from "vue";
12
- const zr = { class: "key-value-input flex flex-col gap-1" }, qr = { class: "flex gap-2" }, Wr = {
11
+ import { defineComponent as st, ref as L, watch as Qe, resolveComponent as j, createElementBlock as J, openBlock as M, createElementVNode as N, createCommentVNode as te, createBlock as me, createVNode as E, withCtx as R, createTextVNode as D, toDisplayString as Ee, Fragment as _n, renderList as va, computed as Gt, useModel as Ca, normalizeStyle as Mr, withDirectives as Or, vModelText as Gr, nextTick as Fr, onMounted as Dr, unref as Ur } from "vue";
12
+ const zr = { class: "key-value-input flex flex-col gap-1" }, qr = { class: "flex gap-2" }, Hr = {
13
13
  key: 0,
14
14
  class: "flex flex-col gap-1"
15
- }, Hr = { class: "flex w-full gap-1 items-center" }, Vr = /* @__PURE__ */ st({
15
+ }, Wr = { class: "flex w-full gap-1 items-center" }, Vr = /* @__PURE__ */ st({
16
16
  __name: "KeyValueInput",
17
17
  props: {
18
18
  modelValue: {},
@@ -25,48 +25,48 @@ const zr = { class: "key-value-input flex flex-col gap-1" }, qr = { class: "flex
25
25
  const n = t, a = e, r = L(n.modelValue);
26
26
  Qe(
27
27
  () => n.modelValue,
28
- (i) => {
29
- r.value = i;
28
+ (l) => {
29
+ r.value = l;
30
30
  }
31
31
  ), Qe(
32
32
  r,
33
- (i) => {
34
- a("update:modelValue", i);
33
+ (l) => {
34
+ a("update:modelValue", l);
35
35
  },
36
36
  { deep: !0 }
37
37
  );
38
38
  const s = () => {
39
39
  r.value.push({ key: "", value: "" });
40
- }, o = (i) => {
41
- r.value.splice(i, 1);
42
- }, l = () => {
40
+ }, o = (l) => {
41
+ r.value.splice(l, 1);
42
+ }, i = () => {
43
43
  r.value = [];
44
44
  };
45
- return (i, c) => {
45
+ return (l, c) => {
46
46
  const u = j("a-button"), p = j("a-popconfirm"), d = j("a-input"), f = j("a-typography-paragraph"), m = j("a-typography");
47
47
  return M(), J("div", zr, [
48
48
  N("div", qr, [
49
- S(u, {
49
+ E(u, {
50
50
  type: "primary",
51
51
  onClick: s,
52
52
  class: "w-full max-w-50%",
53
53
  size: "small"
54
54
  }, {
55
55
  default: R(() => [
56
- D(Ee(i.addButtonText), 1)
56
+ D(Ee(l.addButtonText), 1)
57
57
  ]),
58
58
  _: 1
59
59
  }),
60
- S(p, {
60
+ E(p, {
61
61
  class: "w-full max-w-50%",
62
62
  title: "确认清空",
63
63
  description: "确定要清空所有参数吗?",
64
64
  "ok-text": "确认",
65
65
  "cancel-text": "取消",
66
- onConfirm: l
66
+ onConfirm: i
67
67
  }, {
68
68
  default: R(() => [
69
- S(u, {
69
+ E(u, {
70
70
  type: "primary",
71
71
  danger: "",
72
72
  size: "small",
@@ -82,13 +82,13 @@ const zr = { class: "key-value-input flex flex-col gap-1" }, qr = { class: "flex
82
82
  _: 1
83
83
  })
84
84
  ]),
85
- r.value.length > 0 ? (M(), J("div", Wr, [
85
+ r.value.length > 0 ? (M(), J("div", Hr, [
86
86
  (M(!0), J(_n, null, va(r.value, (_, g) => (M(), J("div", {
87
87
  key: g,
88
88
  class: "flex"
89
89
  }, [
90
- N("div", Hr, [
91
- S(u, {
90
+ N("div", Wr, [
91
+ E(u, {
92
92
  type: "primary",
93
93
  danger: "",
94
94
  onClick: (b) => o(g),
@@ -100,14 +100,14 @@ const zr = { class: "key-value-input flex flex-col gap-1" }, qr = { class: "flex
100
100
  ])),
101
101
  _: 2
102
102
  }, 1032, ["onClick"]),
103
- S(d, {
103
+ E(d, {
104
104
  value: _.key,
105
105
  "onUpdate:value": (b) => _.key = b,
106
106
  placeholder: "键",
107
107
  style: { width: "60%" },
108
108
  size: "small"
109
109
  }, null, 8, ["value", "onUpdate:value"]),
110
- S(d, {
110
+ E(d, {
111
111
  value: _.value,
112
112
  "onUpdate:value": (b) => _.value = b,
113
113
  placeholder: "值",
@@ -116,21 +116,21 @@ const zr = { class: "key-value-input flex flex-col gap-1" }, qr = { class: "flex
116
116
  }, null, 8, ["value", "onUpdate:value"])
117
117
  ])
118
118
  ]))), 128))
119
- ])) : se("", !0),
120
- i.showPreview ? (M(), $e(m, {
119
+ ])) : te("", !0),
120
+ l.showPreview ? (M(), me(m, {
121
121
  key: 1,
122
122
  class: "m-0"
123
123
  }, {
124
124
  default: R(() => [
125
- S(f, { class: "!m-0" }, {
125
+ E(f, { class: "!m-0" }, {
126
126
  default: R(() => [
127
- N("pre", null, Ee(i.previewText), 1)
127
+ N("pre", null, Ee(l.previewText), 1)
128
128
  ]),
129
129
  _: 1
130
130
  })
131
131
  ]),
132
132
  _: 1
133
- })) : se("", !0)
133
+ })) : te("", !0)
134
134
  ]);
135
135
  };
136
136
  }
@@ -160,46 +160,51 @@ const zr = { class: "key-value-input flex flex-col gap-1" }, qr = { class: "flex
160
160
  }, rs = { class: "flex flex-row gap-1 items-center" }, ss = /* @__PURE__ */ st({
161
161
  __name: "RequestForm",
162
162
  props: {
163
- modelValue: { default: () => Xr }
163
+ modelValue: { default: () => Xr },
164
+ showAuth: { type: Boolean, default: !1 }
164
165
  },
165
166
  emits: ["update:modelValue"],
166
167
  setup(t, { emit: e }) {
167
- const n = t, a = e, r = L(n.modelValue.method), s = L(n.modelValue.url), o = L(n.modelValue.auth.type), l = L(n.modelValue.path), i = L(n.modelValue.auth.username || ""), c = L(n.modelValue.auth.password || ""), u = L(n.modelValue.auth.token || ""), p = L(n.modelValue.params), d = L(n.modelValue.headers), f = L(n.modelValue.body.formData || []), m = L(n.modelValue.body.type), _ = L(n.modelValue.body.json || ""), g = L(n.modelValue.body.raw || ""), b = L("");
168
- function w(E, $) {
168
+ const n = t, a = e, r = L(n.modelValue.method), s = L(n.modelValue.url), o = L(n.modelValue.auth.type), i = L(n.modelValue.path), l = L(n.modelValue.auth.username || ""), c = L(n.modelValue.auth.password || ""), u = L(n.modelValue.auth.token || ""), p = L(n.modelValue.params), d = L(n.modelValue.headers), f = L(n.modelValue.body.formData || []), m = L(n.modelValue.body.type), _ = L(n.modelValue.body.json || ""), g = L(n.modelValue.body.raw || ""), b = L("");
169
+ function w(x, $) {
169
170
  let T;
170
171
  return function(...ue) {
171
- clearTimeout(T), T = setTimeout(() => E.apply(this, ue), $);
172
+ clearTimeout(T), T = setTimeout(() => x.apply(this, ue), $);
172
173
  };
173
174
  }
174
- const k = () => ({
175
- method: r.value,
176
- url: s.value,
177
- path: l.value,
178
- auth: {
175
+ const k = () => {
176
+ const x = {
177
+ method: r.value,
178
+ url: s.value,
179
+ path: i.value,
180
+ auth: { type: "none" },
181
+ // 默认提供一个空的auth对象
182
+ params: p.value,
183
+ headers: d.value,
184
+ body: {
185
+ type: m.value,
186
+ ...m.value === "application/json" ? { json: _.value } : m.value === "multipart/form-data" ? { formData: f.value } : { raw: g.value }
187
+ }
188
+ };
189
+ return n.showAuth && (x.auth = {
179
190
  type: o.value,
180
191
  ...o.value === "Basic" ? {
181
- username: i.value,
192
+ username: l.value,
182
193
  password: c.value
183
194
  } : o.value === "Bearer" ? {
184
195
  token: u.value
185
196
  } : {}
186
- },
187
- params: p.value,
188
- headers: d.value,
189
- body: {
190
- type: m.value,
191
- ...m.value === "application/json" ? { json: _.value } : m.value === "multipart/form-data" ? { formData: f.value } : { raw: g.value }
192
- }
193
- }), v = w(() => {
197
+ }), x;
198
+ }, v = w(() => {
194
199
  a("update:modelValue", k());
195
200
  }, 100);
196
201
  Qe(
197
202
  [
198
203
  r,
199
204
  s,
200
- l,
201
- o,
202
205
  i,
206
+ o,
207
+ l,
203
208
  c,
204
209
  u,
205
210
  p,
@@ -215,15 +220,15 @@ const zr = { class: "key-value-input flex flex-col gap-1" }, qr = { class: "flex
215
220
  { deep: !0 }
216
221
  ), Qe(
217
222
  () => n.modelValue,
218
- (E) => {
223
+ (x) => {
219
224
  const $ = k();
220
- JSON.stringify(E) !== JSON.stringify($) && (r.value = E.method, s.value = E.url, l.value = E.path, o.value = E.auth.type, i.value = E.auth.username || "", c.value = E.auth.password || "", u.value = E.auth.token || "", p.value = E.params, d.value = E.headers, m.value = E.body.type, f.value = E.body.formData || [], _.value = E.body.json || "", g.value = E.body.raw || "");
225
+ JSON.stringify(x) !== JSON.stringify($) && (r.value = x.method, s.value = x.url, i.value = x.path, n.showAuth && x.auth && (o.value = x.auth.type, l.value = x.auth.username || "", c.value = x.auth.password || "", u.value = x.auth.token || ""), p.value = x.params, d.value = x.headers, m.value = x.body.type, f.value = x.body.formData || [], _.value = x.body.json || "", g.value = x.body.raw || "");
221
226
  },
222
227
  { deep: !0 }
223
228
  );
224
229
  const A = Gt(() => {
225
- const E = p.value.filter(($) => !!$.key).map(($) => $.key + "=" + encodeURIComponent($.value)).join("&");
226
- return E === "" ? "" : "?" + E;
230
+ const x = p.value.filter(($) => !!$.key).map(($) => $.key + "=" + encodeURIComponent($.value)).join("&");
231
+ return x === "" ? "" : "?" + x;
227
232
  }), O = Gt(() => {
228
233
  switch (m.value) {
229
234
  case "application/json":
@@ -233,14 +238,14 @@ const zr = { class: "key-value-input flex flex-col gap-1" }, qr = { class: "flex
233
238
  return "Invalid JSON";
234
239
  }
235
240
  case "multipart/form-data":
236
- const E = "----WebKitFormBoundaryPreview";
241
+ const x = "----WebKitFormBoundaryPreview";
237
242
  return f.value.filter((T) => !!T.key).map(
238
- (T) => `--${E}\r
243
+ (T) => `--${x}\r
239
244
  Content-Disposition: form-data; name="${T.key}"\r
240
245
  \r
241
246
  ${T.value}\r
242
247
  `
243
- ).join("") + `--${E}--\r
248
+ ).join("") + `--${x}--\r
244
249
  `;
245
250
  case "text/plain":
246
251
  return g.value || "-空-";
@@ -255,30 +260,30 @@ ${T.value}\r
255
260
  }
256
261
  }, q = () => {
257
262
  try {
258
- const E = s.value, $ = new URL(E);
259
- s.value = `${$.protocol}//${$.host}`, l.value = $.pathname;
263
+ const x = s.value, $ = new URL(x);
264
+ s.value = `${$.protocol}//${$.host}`, i.value = $.pathname;
260
265
  const T = new URLSearchParams($.search), ue = [];
261
- T.forEach((H, ie) => {
262
- ue.push({ key: ie, value: H });
266
+ T.forEach((W, ie) => {
267
+ ue.push({ key: ie, value: W });
263
268
  }), p.value = ue;
264
- } catch (E) {
265
- console.error("URL解析失败:", E);
269
+ } catch (x) {
270
+ console.error("URL解析失败:", x);
266
271
  }
267
272
  }, ce = Gt(() => {
268
273
  if (!s.value) return !1;
269
274
  try {
270
- const E = s.value, $ = new URL(E);
275
+ const x = s.value, $ = new URL(x);
271
276
  return $.search !== "" || $.pathname !== "/";
272
277
  } catch {
273
278
  return !1;
274
279
  }
275
280
  });
276
- return (E, $) => {
277
- const T = j("a-input"), ue = j("a-button"), H = j("a-select-option"), ie = j("a-select"), be = j("a-card"), Le = j("a-radio-button"), Bn = j("a-radio-group"), Rr = j("a-input-password"), jt = j("a-textarea"), Nr = j("a-alert"), Pr = j("a-form");
281
+ return (x, $) => {
282
+ const T = j("a-input"), ue = j("a-button"), W = j("a-select-option"), ie = j("a-select"), ye = j("a-card"), Le = j("a-radio-button"), Bn = j("a-radio-group"), Rr = j("a-input-password"), jt = j("a-textarea"), Nr = j("a-alert"), Pr = j("a-form");
278
283
  return M(), J("div", Zr, [
279
- S(Pr, { layout: "vertical" }, {
284
+ E(Pr, { layout: "vertical" }, {
280
285
  default: R(() => [
281
- S(be, {
286
+ E(ye, {
282
287
  title: "URL配置",
283
288
  class: "form-section",
284
289
  size: "small"
@@ -286,13 +291,13 @@ ${T.value}\r
286
291
  default: R(() => [
287
292
  N("div", Kr, [
288
293
  N("div", Jr, [
289
- S(T, {
294
+ E(T, {
290
295
  value: s.value,
291
296
  "onUpdate:value": $[0] || ($[0] = (B) => s.value = B),
292
297
  placeholder: "基础URL",
293
298
  size: "small"
294
299
  }, null, 8, ["value"]),
295
- ce.value ? (M(), $e(ue, {
300
+ ce.value ? (M(), me(ue, {
296
301
  key: 0,
297
302
  type: "primary",
298
303
  size: "small",
@@ -302,41 +307,41 @@ ${T.value}\r
302
307
  D("拆解")
303
308
  ])),
304
309
  _: 1
305
- })) : se("", !0)
310
+ })) : te("", !0)
306
311
  ]),
307
312
  N("div", Qr, [
308
- S(ie, {
313
+ E(ie, {
309
314
  value: r.value,
310
315
  "onUpdate:value": $[1] || ($[1] = (B) => r.value = B),
311
316
  class: "w-40",
312
317
  size: "small"
313
318
  }, {
314
319
  default: R(() => [
315
- S(H, { value: "GET" }, {
320
+ E(W, { value: "GET" }, {
316
321
  default: R(() => $[14] || ($[14] = [
317
322
  D("GET")
318
323
  ])),
319
324
  _: 1
320
325
  }),
321
- S(H, { value: "POST" }, {
326
+ E(W, { value: "POST" }, {
322
327
  default: R(() => $[15] || ($[15] = [
323
328
  D("POST")
324
329
  ])),
325
330
  _: 1
326
331
  }),
327
- S(H, { value: "PUT" }, {
332
+ E(W, { value: "PUT" }, {
328
333
  default: R(() => $[16] || ($[16] = [
329
334
  D("PUT")
330
335
  ])),
331
336
  _: 1
332
337
  }),
333
- S(H, { value: "DELETE" }, {
338
+ E(W, { value: "DELETE" }, {
334
339
  default: R(() => $[17] || ($[17] = [
335
340
  D("DELETE")
336
341
  ])),
337
342
  _: 1
338
343
  }),
339
- S(H, { value: "OPTIONS" }, {
344
+ E(W, { value: "OPTIONS" }, {
340
345
  default: R(() => $[18] || ($[18] = [
341
346
  D("OPTIONS")
342
347
  ])),
@@ -345,52 +350,53 @@ ${T.value}\r
345
350
  ]),
346
351
  _: 1
347
352
  }, 8, ["value"]),
348
- S(T, {
349
- value: l.value,
350
- "onUpdate:value": $[2] || ($[2] = (B) => l.value = B),
353
+ E(T, {
354
+ value: i.value,
355
+ "onUpdate:value": $[2] || ($[2] = (B) => i.value = B),
351
356
  placeholder: "路径",
352
357
  size: "small"
353
358
  }, null, 8, ["value"])
354
359
  ])
355
360
  ]),
356
361
  N("div", Yr, [
357
- S(Ft, {
362
+ E(Ft, {
358
363
  modelValue: p.value,
359
364
  "onUpdate:modelValue": $[3] || ($[3] = (B) => p.value = B),
360
365
  "add-button-text": "添加参数",
361
366
  "show-preview": !0,
362
- "preview-text": s.value + l.value + A.value
367
+ "preview-text": s.value + i.value + A.value
363
368
  }, null, 8, ["modelValue", "preview-text"])
364
369
  ])
365
370
  ]),
366
371
  _: 1
367
372
  }),
368
- S(be, {
373
+ n.showAuth ? (M(), me(ye, {
374
+ key: 0,
369
375
  title: "认证方案",
370
376
  class: "form-section",
371
377
  size: "small"
372
378
  }, {
373
379
  default: R(() => [
374
- S(Bn, {
380
+ E(Bn, {
375
381
  value: o.value,
376
382
  "onUpdate:value": $[4] || ($[4] = (B) => o.value = B),
377
383
  "button-style": "solid",
378
384
  size: "small"
379
385
  }, {
380
386
  default: R(() => [
381
- S(Le, { value: "none" }, {
387
+ E(Le, { value: "none" }, {
382
388
  default: R(() => $[19] || ($[19] = [
383
389
  D("无认证")
384
390
  ])),
385
391
  _: 1
386
392
  }),
387
- S(Le, { value: "Basic" }, {
393
+ E(Le, { value: "Basic" }, {
388
394
  default: R(() => $[20] || ($[20] = [
389
395
  D("Basic认证")
390
396
  ])),
391
397
  _: 1
392
398
  }),
393
- S(Le, { value: "Bearer" }, {
399
+ E(Le, { value: "Bearer" }, {
394
400
  default: R(() => $[21] || ($[21] = [
395
401
  D("Bearer认证")
396
402
  ])),
@@ -402,25 +408,25 @@ ${T.value}\r
402
408
  o.value === "Basic" ? (M(), J("div", es, [
403
409
  N("div", ts, [
404
410
  $[22] || ($[22] = N("p", { class: "m-0 w-16" }, "用户名", -1)),
405
- S(T, {
406
- value: i.value,
407
- "onUpdate:value": $[5] || ($[5] = (B) => i.value = B),
411
+ E(T, {
412
+ value: l.value,
413
+ "onUpdate:value": $[5] || ($[5] = (B) => l.value = B),
408
414
  size: "small"
409
415
  }, null, 8, ["value"])
410
416
  ]),
411
417
  N("div", ns, [
412
418
  $[23] || ($[23] = N("p", { class: "m-0 w-16" }, "密码", -1)),
413
- S(Rr, {
419
+ E(Rr, {
414
420
  value: c.value,
415
421
  "onUpdate:value": $[6] || ($[6] = (B) => c.value = B),
416
422
  size: "small"
417
423
  }, null, 8, ["value"])
418
424
  ])
419
- ])) : se("", !0),
425
+ ])) : te("", !0),
420
426
  o.value === "Bearer" ? (M(), J("div", as, [
421
427
  N("div", rs, [
422
428
  $[24] || ($[24] = N("p", { class: "m-0 w-16 h-full" }, "Token", -1)),
423
- S(jt, {
429
+ E(jt, {
424
430
  value: u.value,
425
431
  "onUpdate:value": $[7] || ($[7] = (B) => u.value = B),
426
432
  size: "small",
@@ -429,17 +435,17 @@ ${T.value}\r
429
435
  placeholder: "请输入Token"
430
436
  }, null, 8, ["value"])
431
437
  ])
432
- ])) : se("", !0)
438
+ ])) : te("", !0)
433
439
  ]),
434
440
  _: 1
435
- }),
436
- S(be, {
441
+ })) : te("", !0),
442
+ E(ye, {
437
443
  title: "请求头",
438
444
  class: "form-section",
439
445
  size: "small"
440
446
  }, {
441
447
  default: R(() => [
442
- S(Ft, {
448
+ E(Ft, {
443
449
  modelValue: d.value,
444
450
  "onUpdate:modelValue": $[8] || ($[8] = (B) => d.value = B),
445
451
  "add-button-text": "添加请求头",
@@ -448,14 +454,14 @@ ${T.value}\r
448
454
  ]),
449
455
  _: 1
450
456
  }),
451
- r.value === "POST" || r.value === "PUT" ? (M(), $e(be, {
452
- key: 0,
457
+ r.value === "POST" || r.value === "PUT" ? (M(), me(ye, {
458
+ key: 1,
453
459
  title: "请求体",
454
460
  class: "form-section",
455
461
  size: "small"
456
462
  }, {
457
463
  default: R(() => [
458
- S(Bn, {
464
+ E(Bn, {
459
465
  value: m.value,
460
466
  "onUpdate:value": $[9] || ($[9] = (B) => m.value = B),
461
467
  "button-style": "solid",
@@ -463,19 +469,19 @@ ${T.value}\r
463
469
  class: "mb-1"
464
470
  }, {
465
471
  default: R(() => [
466
- S(Le, { value: "application/json" }, {
472
+ E(Le, { value: "application/json" }, {
467
473
  default: R(() => $[25] || ($[25] = [
468
474
  D("JSON")
469
475
  ])),
470
476
  _: 1
471
477
  }),
472
- S(Le, { value: "multipart/form-data" }, {
478
+ E(Le, { value: "multipart/form-data" }, {
473
479
  default: R(() => $[26] || ($[26] = [
474
480
  D("Form Data")
475
481
  ])),
476
482
  _: 1
477
483
  }),
478
- S(Le, { value: "text/plain" }, {
484
+ E(Le, { value: "text/plain" }, {
479
485
  default: R(() => $[27] || ($[27] = [
480
486
  D("Raw")
481
487
  ])),
@@ -485,46 +491,46 @@ ${T.value}\r
485
491
  _: 1
486
492
  }, 8, ["value"]),
487
493
  m.value === "application/json" ? (M(), J(_n, { key: 0 }, [
488
- S(jt, {
494
+ E(jt, {
489
495
  value: _.value,
490
496
  "onUpdate:value": $[10] || ($[10] = (B) => _.value = B),
491
497
  rows: 6,
492
498
  placeholder: "请输入 JSON 数据",
493
499
  onInput: I
494
500
  }, null, 8, ["value"]),
495
- b.value ? (M(), $e(Nr, {
501
+ b.value ? (M(), me(Nr, {
496
502
  key: 0,
497
503
  type: "error",
498
504
  message: b.value,
499
505
  banner: "",
500
506
  style: { "margin-bottom": "8px" }
501
- }, null, 8, ["message"])) : se("", !0)
502
- ], 64)) : se("", !0),
503
- m.value === "multipart/form-data" ? (M(), $e(Ft, {
507
+ }, null, 8, ["message"])) : te("", !0)
508
+ ], 64)) : te("", !0),
509
+ m.value === "multipart/form-data" ? (M(), me(Ft, {
504
510
  key: 1,
505
511
  modelValue: f.value,
506
512
  "onUpdate:modelValue": $[11] || ($[11] = (B) => f.value = B),
507
513
  "add-button-text": "添加表单字段",
508
514
  "show-preview": !1
509
- }, null, 8, ["modelValue"])) : se("", !0),
510
- m.value === "text/plain" ? (M(), $e(jt, {
515
+ }, null, 8, ["modelValue"])) : te("", !0),
516
+ m.value === "text/plain" ? (M(), me(jt, {
511
517
  key: 2,
512
518
  value: g.value,
513
519
  "onUpdate:value": $[12] || ($[12] = (B) => g.value = B),
514
520
  rows: 6,
515
521
  placeholder: "请输入原始数据"
516
- }, null, 8, ["value"])) : se("", !0),
522
+ }, null, 8, ["value"])) : te("", !0),
517
523
  N("pre", null, Ee(O.value), 1)
518
524
  ]),
519
525
  _: 1
520
- })) : se("", !0)
526
+ })) : te("", !0)
521
527
  ]),
522
528
  _: 1
523
529
  })
524
530
  ]);
525
531
  };
526
532
  }
527
- }), au = /* @__PURE__ */ Rt(ss, [["__scopeId", "data-v-c9f65487"]]);
533
+ }), au = /* @__PURE__ */ Rt(ss, [["__scopeId", "data-v-398ba576"]]);
528
534
  async function os(t, e = "xhr") {
529
535
  return e === "fetch" ? is(t) : ls(t);
530
536
  }
@@ -550,8 +556,8 @@ async function is(t) {
550
556
  break;
551
557
  case "multipart/form-data":
552
558
  const o = new FormData();
553
- (s = t.body.formData) == null || s.forEach((l) => {
554
- l.key && o.append(l.key, l.value);
559
+ (s = t.body.formData) == null || s.forEach((i) => {
560
+ i.key && o.append(i.key, i.value);
555
561
  }), r.body = o;
556
562
  break;
557
563
  case "text/plain":
@@ -559,24 +565,24 @@ async function is(t) {
559
565
  break;
560
566
  }
561
567
  try {
562
- const o = await fetch(n, r), l = {};
568
+ const o = await fetch(n, r), i = {};
563
569
  o.headers.forEach((u, p) => {
564
- l[p.toLowerCase()] = u;
570
+ i[p.toLowerCase()] = u;
565
571
  });
566
- let i = "";
567
- if ((l["content-type"] || "").startsWith("application/json"))
572
+ let l = "";
573
+ if ((i["content-type"] || "").startsWith("application/json"))
568
574
  try {
569
575
  const u = await o.json();
570
- i = JSON.stringify(u, null, 2);
576
+ l = JSON.stringify(u, null, 2);
571
577
  } catch {
572
- i = await o.text();
578
+ l = await o.text();
573
579
  }
574
580
  else
575
- i = await o.text();
581
+ l = await o.text();
576
582
  return {
577
583
  status: o.status.toString(),
578
- headers: l,
579
- body: i
584
+ headers: i,
585
+ body: l
580
586
  };
581
587
  } catch {
582
588
  throw new Error("Request failed");
@@ -584,9 +590,9 @@ async function is(t) {
584
590
  }
585
591
  async function ls(t) {
586
592
  return new Promise((e, n) => {
587
- var i;
588
- const a = new XMLHttpRequest(), r = t.auth.type === "Basic" ? t.auth.username : null, s = t.auth.type === "Basic" ? t.auth.password : null, o = t.params.filter((c) => !!c.key).map((c) => `${c.key}=${encodeURIComponent(c.value)}`).join("&"), l = `${t.url}${t.path}${o ? "?" + o : ""}`;
589
- if (a.open(t.method, l, !0, r, s), t.headers.forEach((c) => {
593
+ var l;
594
+ const a = new XMLHttpRequest(), r = t.auth.type === "Basic" ? t.auth.username : null, s = t.auth.type === "Basic" ? t.auth.password : null, o = t.params.filter((c) => !!c.key).map((c) => `${c.key}=${encodeURIComponent(c.value)}`).join("&"), i = `${t.url}${t.path}${o ? "?" + o : ""}`;
595
+ if (a.open(t.method, i, !0, r, s), t.headers.forEach((c) => {
590
596
  c.key && a.setRequestHeader(c.key, c.value);
591
597
  }), t.auth.type === "Bearer" && t.auth.token && a.setRequestHeader("Authorization", `Bearer ${t.auth.token}`), t.method === "POST" || t.method === "PUT") {
592
598
  let c = "";
@@ -596,7 +602,7 @@ async function ls(t) {
596
602
  break;
597
603
  case "multipart/form-data":
598
604
  const u = new FormData();
599
- (i = t.body.formData) == null || i.forEach((p) => {
605
+ (l = t.body.formData) == null || l.forEach((p) => {
600
606
  p.key && u.append(p.key, p.value);
601
607
  }), c = u;
602
608
  break;
@@ -630,8 +636,8 @@ async function ls(t) {
630
636
  function cs(t) {
631
637
  const e = t.getAllResponseHeaders().trim().split(/[\r\n]+/), n = {};
632
638
  return e.forEach(function(a) {
633
- var l;
634
- const r = a.split(": "), s = ((l = r.shift()) == null ? void 0 : l.toLowerCase()) || "", o = r.join(": ");
639
+ var i;
640
+ const r = a.split(": "), s = ((i = r.shift()) == null ? void 0 : i.toLowerCase()) || "", o = r.join(": ");
635
641
  n[s] = o;
636
642
  }), n;
637
643
  }
@@ -649,46 +655,46 @@ const us = { style: { display: "flex", "align-items": "center", gap: "8px", "mar
649
655
  headers: {},
650
656
  body: "",
651
657
  timing: 0
652
- }), r = L(""), s = (i) => {
653
- const c = Number(i);
658
+ }), r = L(""), s = (l) => {
659
+ const c = Number(l);
654
660
  return c >= 200 && c < 300 ? "success" : c >= 300 && c < 400 ? "warning" : c >= 400 && c < 500 || c >= 500 ? "error" : "default";
655
- }, o = (i) => i instanceof Error ? i.message : "请求失败", l = async () => {
661
+ }, o = (l) => l instanceof Error ? l.message : "请求失败", i = async () => {
656
662
  r.value = "";
657
- const i = Date.now();
663
+ const l = Date.now();
658
664
  try {
659
- a.value = await os(e.modelValue, n.value), a.value.timing = Date.now() - i;
665
+ a.value = await os(e.modelValue, n.value), a.value.timing = Date.now() - l;
660
666
  } catch (c) {
661
667
  r.value = o(c), a.value = {
662
668
  status: "Error",
663
669
  headers: {},
664
670
  body: c instanceof Error ? c.message : "Request failed",
665
- timing: Date.now() - i
671
+ timing: Date.now() - l
666
672
  };
667
673
  }
668
674
  };
669
- return (i, c) => {
675
+ return (l, c) => {
670
676
  const u = j("a-radio-button"), p = j("a-radio-group"), d = j("a-button"), f = j("a-alert"), m = j("a-tag"), _ = j("a-textarea"), g = j("a-card");
671
- return M(), $e(g, {
677
+ return M(), me(g, {
672
678
  title: "响应",
673
679
  class: "form-section",
674
680
  size: "small"
675
681
  }, {
676
682
  default: R(() => [
677
683
  N("div", us, [
678
- S(p, {
684
+ E(p, {
679
685
  value: n.value,
680
686
  "onUpdate:value": c[0] || (c[0] = (b) => n.value = b),
681
687
  "button-style": "solid",
682
688
  size: "small"
683
689
  }, {
684
690
  default: R(() => [
685
- S(u, { value: "xhr" }, {
691
+ E(u, { value: "xhr" }, {
686
692
  default: R(() => c[2] || (c[2] = [
687
693
  D("XMLHttpRequest")
688
694
  ])),
689
695
  _: 1
690
696
  }),
691
- S(u, { value: "fetch" }, {
697
+ E(u, { value: "fetch" }, {
692
698
  default: R(() => c[3] || (c[3] = [
693
699
  D("Fetch")
694
700
  ])),
@@ -697,9 +703,9 @@ const us = { style: { display: "flex", "align-items": "center", gap: "8px", "mar
697
703
  ]),
698
704
  _: 1
699
705
  }, 8, ["value"]),
700
- S(d, {
706
+ E(d, {
701
707
  type: "primary",
702
- onClick: l,
708
+ onClick: i,
703
709
  size: "small"
704
710
  }, {
705
711
  default: R(() => c[4] || (c[4] = [
@@ -708,19 +714,19 @@ const us = { style: { display: "flex", "align-items": "center", gap: "8px", "mar
708
714
  _: 1
709
715
  })
710
716
  ]),
711
- r.value ? (M(), $e(f, {
717
+ r.value ? (M(), me(f, {
712
718
  key: 0,
713
719
  message: r.value,
714
720
  type: "error",
715
721
  "show-icon": "",
716
722
  style: { "margin-bottom": "8px" }
717
- }, null, 8, ["message"])) : se("", !0),
723
+ }, null, 8, ["message"])) : te("", !0),
718
724
  N("div", ps, [
719
725
  c[7] || (c[7] = N("div", { class: "text-sm font-bold" }, "基本信息", -1)),
720
726
  N("div", ds, [
721
727
  N("div", null, [
722
728
  c[5] || (c[5] = N("span", null, "状态码:", -1)),
723
- S(m, {
729
+ E(m, {
724
730
  color: s(a.value.status)
725
731
  }, {
726
732
  default: R(() => [
@@ -744,7 +750,7 @@ const us = { style: { display: "flex", "align-items": "center", gap: "8px", "mar
744
750
  ])
745
751
  ])) : (M(), J("p", gs, "无响应头")),
746
752
  c[9] || (c[9] = N("div", { class: "text-sm font-bold" }, "响应体", -1)),
747
- S(_, {
753
+ E(_, {
748
754
  value: a.value.body,
749
755
  "onUpdate:value": c[1] || (c[1] = (b) => a.value.body = b),
750
756
  rows: 5,
@@ -798,18 +804,18 @@ var Dt = /\$(\d+)|\${(\d+):\/(downcase|upcase)}/g, ct = class {
798
804
  }
799
805
  static replaceCaptures(t, e, n) {
800
806
  return t.replace(Dt, (a, r, s, o) => {
801
- let l = n[parseInt(r || s, 10)];
802
- if (l) {
803
- let i = e.substring(l.start, l.end);
804
- for (; i[0] === "."; )
805
- i = i.substring(1);
807
+ let i = n[parseInt(r || s, 10)];
808
+ if (i) {
809
+ let l = e.substring(i.start, i.end);
810
+ for (; l[0] === "."; )
811
+ l = l.substring(1);
806
812
  switch (o) {
807
813
  case "downcase":
808
- return i.toLowerCase();
814
+ return l.toLowerCase();
809
815
  case "upcase":
810
- return i.toUpperCase();
816
+ return l.toUpperCase();
811
817
  default:
812
- return i;
818
+ return l;
813
819
  }
814
820
  } else
815
821
  return a;
@@ -963,28 +969,28 @@ function vs(t) {
963
969
  let o = e[r];
964
970
  if (!o.settings)
965
971
  continue;
966
- let l;
972
+ let i;
967
973
  if (typeof o.scope == "string") {
968
974
  let p = o.scope;
969
- p = p.replace(/^[,]+/, ""), p = p.replace(/[,]+$/, ""), l = p.split(",");
970
- } else Array.isArray(o.scope) ? l = o.scope : l = [""];
971
- let i = -1;
975
+ p = p.replace(/^[,]+/, ""), p = p.replace(/[,]+$/, ""), i = p.split(",");
976
+ } else Array.isArray(o.scope) ? i = o.scope : i = [""];
977
+ let l = -1;
972
978
  if (typeof o.settings.fontStyle == "string") {
973
- i = 0;
979
+ l = 0;
974
980
  let p = o.settings.fontStyle.split(" ");
975
981
  for (let d = 0, f = p.length; d < f; d++)
976
982
  switch (p[d]) {
977
983
  case "italic":
978
- i = i | 1;
984
+ l = l | 1;
979
985
  break;
980
986
  case "bold":
981
- i = i | 2;
987
+ l = l | 2;
982
988
  break;
983
989
  case "underline":
984
- i = i | 4;
990
+ l = l | 4;
985
991
  break;
986
992
  case "strikethrough":
987
- i = i | 8;
993
+ l = l | 8;
988
994
  break;
989
995
  }
990
996
  }
@@ -992,13 +998,13 @@ function vs(t) {
992
998
  typeof o.settings.foreground == "string" && jn(o.settings.foreground) && (c = o.settings.foreground);
993
999
  let u = null;
994
1000
  typeof o.settings.background == "string" && jn(o.settings.background) && (u = o.settings.background);
995
- for (let p = 0, d = l.length; p < d; p++) {
996
- let m = l[p].trim().split(" "), _ = m[m.length - 1], g = null;
1001
+ for (let p = 0, d = i.length; p < d; p++) {
1002
+ let m = i[p].trim().split(" "), _ = m[m.length - 1], g = null;
997
1003
  m.length > 1 && (g = m.slice(0, m.length - 1), g.reverse()), n[a++] = new Cs(
998
1004
  _,
999
1005
  g,
1000
1006
  r,
1001
- i,
1007
+ l,
1002
1008
  c,
1003
1009
  u
1004
1010
  );
@@ -1012,21 +1018,21 @@ var Cs = class {
1012
1018
  }
1013
1019
  }, Z = /* @__PURE__ */ ((t) => (t[t.NotSet = -1] = "NotSet", t[t.None = 0] = "None", t[t.Italic = 1] = "Italic", t[t.Bold = 2] = "Bold", t[t.Underline = 4] = "Underline", t[t.Strikethrough = 8] = "Strikethrough", t))(Z || {});
1014
1020
  function xs(t, e) {
1015
- t.sort((i, c) => {
1016
- let u = Ea(i.scope, c.scope);
1017
- return u !== 0 || (u = Aa(i.parentScopes, c.parentScopes), u !== 0) ? u : i.index - c.index;
1021
+ t.sort((l, c) => {
1022
+ let u = Ea(l.scope, c.scope);
1023
+ return u !== 0 || (u = Aa(l.parentScopes, c.parentScopes), u !== 0) ? u : l.index - c.index;
1018
1024
  });
1019
1025
  let n = 0, a = "#000000", r = "#ffffff";
1020
1026
  for (; t.length >= 1 && t[0].scope === ""; ) {
1021
- let i = t.shift();
1022
- i.fontStyle !== -1 && (n = i.fontStyle), i.foreground !== null && (a = i.foreground), i.background !== null && (r = i.background);
1027
+ let l = t.shift();
1028
+ l.fontStyle !== -1 && (n = l.fontStyle), l.foreground !== null && (a = l.foreground), l.background !== null && (r = l.background);
1023
1029
  }
1024
- let s = new Ss(e), o = new Na(n, s.getId(a), s.getId(r)), l = new As(new tn(0, null, -1, 0, 0), []);
1025
- for (let i = 0, c = t.length; i < c; i++) {
1026
- let u = t[i];
1027
- l.insert(0, u.scope, u.parentScopes, u.fontStyle, s.getId(u.foreground), s.getId(u.background));
1030
+ let s = new Ss(e), o = new Na(n, s.getId(a), s.getId(r)), i = new As(new tn(0, null, -1, 0, 0), []);
1031
+ for (let l = 0, c = t.length; l < c; l++) {
1032
+ let u = t[l];
1033
+ i.insert(0, u.scope, u.parentScopes, u.fontStyle, s.getId(u.foreground), s.getId(u.background));
1028
1034
  }
1029
- return new yt(s, o, l);
1035
+ return new yt(s, o, i);
1030
1036
  }
1031
1037
  var Ss = class {
1032
1038
  constructor(t) {
@@ -1107,20 +1113,20 @@ var Ss = class {
1107
1113
  this._doInsertHere(e, a, r, s, o);
1108
1114
  return;
1109
1115
  }
1110
- let l = n.indexOf("."), i, c;
1111
- l === -1 ? (i = n, c = "") : (i = n.substring(0, l), c = n.substring(l + 1));
1116
+ let i = n.indexOf("."), l, c;
1117
+ i === -1 ? (l = n, c = "") : (l = n.substring(0, i), c = n.substring(i + 1));
1112
1118
  let u;
1113
- this._children.hasOwnProperty(i) ? u = this._children[i] : (u = new nn(this._mainRule.clone(), tn.cloneArr(this._rulesWithParentScopes)), this._children[i] = u), u.insert(e + 1, c, a, r, s, o);
1119
+ this._children.hasOwnProperty(l) ? u = this._children[l] : (u = new nn(this._mainRule.clone(), tn.cloneArr(this._rulesWithParentScopes)), this._children[l] = u), u.insert(e + 1, c, a, r, s, o);
1114
1120
  }
1115
1121
  _doInsertHere(e, n, a, r, s) {
1116
1122
  if (n === null) {
1117
1123
  this._mainRule.acceptOverwrite(e, a, r, s);
1118
1124
  return;
1119
1125
  }
1120
- for (let o = 0, l = this._rulesWithParentScopes.length; o < l; o++) {
1121
- let i = this._rulesWithParentScopes[o];
1122
- if (Aa(i.parentScopes, n) === 0) {
1123
- i.acceptOverwrite(e, a, r, s);
1126
+ for (let o = 0, i = this._rulesWithParentScopes.length; o < i; o++) {
1127
+ let l = this._rulesWithParentScopes[o];
1128
+ if (Aa(l.parentScopes, n) === 0) {
1129
+ l.acceptOverwrite(e, a, r, s);
1124
1130
  return;
1125
1131
  }
1126
1132
  }
@@ -1162,23 +1168,23 @@ var Ss = class {
1162
1168
  * Updates the fields in `metadata`.
1163
1169
  * A value of `0`, `NotSet` or `null` indicates that the corresponding field should be left as is.
1164
1170
  */
1165
- static set(e, n, a, r, s, o, l) {
1166
- let i = ee.getLanguageId(e), c = ee.getTokenType(e), u = ee.containsBalancedBrackets(e) ? 1 : 0, p = ee.getFontStyle(e), d = ee.getForeground(e), f = ee.getBackground(e);
1167
- return n !== 0 && (i = n), a !== 8 && (c = a), r !== null && (u = r ? 1 : 0), s !== -1 && (p = s), o !== 0 && (d = o), l !== 0 && (f = l), (i << 0 | c << 8 | u << 10 | p << 11 | d << 15 | f << 24) >>> 0;
1171
+ static set(e, n, a, r, s, o, i) {
1172
+ let l = ee.getLanguageId(e), c = ee.getTokenType(e), u = ee.containsBalancedBrackets(e) ? 1 : 0, p = ee.getFontStyle(e), d = ee.getForeground(e), f = ee.getBackground(e);
1173
+ return n !== 0 && (l = n), a !== 8 && (c = a), r !== null && (u = r ? 1 : 0), s !== -1 && (p = s), o !== 0 && (d = o), i !== 0 && (f = i), (l << 0 | c << 8 | u << 10 | p << 11 | d << 15 | f << 24) >>> 0;
1168
1174
  }
1169
1175
  };
1170
1176
  function _t(t, e) {
1171
1177
  const n = [], a = Is(t);
1172
1178
  let r = a.next();
1173
1179
  for (; r !== null; ) {
1174
- let i = 0;
1180
+ let l = 0;
1175
1181
  if (r.length === 2 && r.charAt(1) === ":") {
1176
1182
  switch (r.charAt(0)) {
1177
1183
  case "R":
1178
- i = 1;
1184
+ l = 1;
1179
1185
  break;
1180
1186
  case "L":
1181
- i = -1;
1187
+ l = -1;
1182
1188
  break;
1183
1189
  default:
1184
1190
  console.log(`Unknown priority ${r} in scope selector`);
@@ -1186,7 +1192,7 @@ function _t(t, e) {
1186
1192
  r = a.next();
1187
1193
  }
1188
1194
  let c = o();
1189
- if (n.push({ matcher: c, priority: i }), r !== ",")
1195
+ if (n.push({ matcher: c, priority: l }), r !== ",")
1190
1196
  break;
1191
1197
  r = a.next();
1192
1198
  }
@@ -1194,40 +1200,40 @@ function _t(t, e) {
1194
1200
  function s() {
1195
1201
  if (r === "-") {
1196
1202
  r = a.next();
1197
- const i = s();
1198
- return (c) => !!i && !i(c);
1203
+ const l = s();
1204
+ return (c) => !!l && !l(c);
1199
1205
  }
1200
1206
  if (r === "(") {
1201
1207
  r = a.next();
1202
- const i = l();
1203
- return r === ")" && (r = a.next()), i;
1208
+ const l = i();
1209
+ return r === ")" && (r = a.next()), l;
1204
1210
  }
1205
1211
  if (Mn(r)) {
1206
- const i = [];
1212
+ const l = [];
1207
1213
  do
1208
- i.push(r), r = a.next();
1214
+ l.push(r), r = a.next();
1209
1215
  while (Mn(r));
1210
- return (c) => e(i, c);
1216
+ return (c) => e(l, c);
1211
1217
  }
1212
1218
  return null;
1213
1219
  }
1214
1220
  function o() {
1215
- const i = [];
1221
+ const l = [];
1216
1222
  let c = s();
1217
1223
  for (; c; )
1218
- i.push(c), c = s();
1219
- return (u) => i.every((p) => p(u));
1224
+ l.push(c), c = s();
1225
+ return (u) => l.every((p) => p(u));
1220
1226
  }
1221
- function l() {
1222
- const i = [];
1227
+ function i() {
1228
+ const l = [];
1223
1229
  let c = o();
1224
- for (; c && (i.push(c), r === "|" || r === ","); ) {
1230
+ for (; c && (l.push(c), r === "|" || r === ","); ) {
1225
1231
  do
1226
1232
  r = a.next();
1227
1233
  while (r === "|" || r === ",");
1228
1234
  c = o();
1229
1235
  }
1230
- return (u) => i.some((p) => p(u));
1236
+ return (u) => l.some((p) => p(u));
1231
1237
  }
1232
1238
  }
1233
1239
  function Mn(t) {
@@ -1314,8 +1320,8 @@ function Bs(t, e, n, a) {
1314
1320
  );
1315
1321
  const o = n.injections(t.scopeName);
1316
1322
  if (o)
1317
- for (const l of o)
1318
- a.add(new Ye(l));
1323
+ for (const i of o)
1324
+ a.add(new Ye(i));
1319
1325
  }
1320
1326
  function an(t, e, n) {
1321
1327
  if (e.repository && e.repository[t]) {
@@ -1357,10 +1363,10 @@ function $t(t, e, n) {
1357
1363
  break;
1358
1364
  case 3:
1359
1365
  case 4:
1360
- const l = o.scopeName === e.selfGrammar.scopeName ? e.selfGrammar : o.scopeName === e.baseGrammar.scopeName ? e.baseGrammar : void 0;
1361
- if (l) {
1362
- const i = { baseGrammar: e.baseGrammar, selfGrammar: l, repository: r };
1363
- o.kind === 4 ? an(o.ruleName, i, n) : gt(i, n);
1366
+ const i = o.scopeName === e.selfGrammar.scopeName ? e.selfGrammar : o.scopeName === e.baseGrammar.scopeName ? e.baseGrammar : void 0;
1367
+ if (i) {
1368
+ const l = { baseGrammar: e.baseGrammar, selfGrammar: i, repository: r };
1369
+ o.kind === 4 ? an(o.ruleName, l, n) : gt(l, n);
1364
1370
  } else
1365
1371
  o.kind === 4 ? n.add(new Rs(o.scopeName, o.ruleName)) : n.add(new Ye(o.scopeName));
1366
1372
  break;
@@ -1495,7 +1501,7 @@ var ot = class {
1495
1501
  return this._cachedCompiledPatterns || (this._cachedCompiledPatterns = new tt(), this.collectPatterns(e, this._cachedCompiledPatterns)), this._cachedCompiledPatterns;
1496
1502
  }
1497
1503
  }, rn = class extends ot {
1498
- constructor(e, n, a, r, s, o, l, i, c, u) {
1504
+ constructor(e, n, a, r, s, o, i, l, c, u) {
1499
1505
  super(e, n, a, r);
1500
1506
  h(this, "_begin");
1501
1507
  h(this, "beginCaptures");
@@ -1506,7 +1512,7 @@ var ot = class {
1506
1512
  h(this, "hasMissingPatterns");
1507
1513
  h(this, "patterns");
1508
1514
  h(this, "_cachedCompiledPatterns");
1509
- this._begin = new et(s, this.id), this.beginCaptures = o, this._end = new et(l || "￿", -1), this.endHasBackReferences = this._end.hasBackReferences, this.endCaptures = i, this.applyEndPatternLast = c || !1, this.patterns = u.patterns, this.hasMissingPatterns = u.hasMissingPatterns, this._cachedCompiledPatterns = null;
1515
+ this._begin = new et(s, this.id), this.beginCaptures = o, this._end = new et(i || "￿", -1), this.endHasBackReferences = this._end.hasBackReferences, this.endCaptures = l, this.applyEndPatternLast = c || !1, this.patterns = u.patterns, this.hasMissingPatterns = u.hasMissingPatterns, this._cachedCompiledPatterns = null;
1510
1516
  }
1511
1517
  dispose() {
1512
1518
  this._cachedCompiledPatterns && (this._cachedCompiledPatterns.dispose(), this._cachedCompiledPatterns = null);
@@ -1539,7 +1545,7 @@ var ot = class {
1539
1545
  return this._end.hasBackReferences && (this.applyEndPatternLast ? this._cachedCompiledPatterns.setSource(this._cachedCompiledPatterns.length() - 1, n) : this._cachedCompiledPatterns.setSource(0, n)), this._cachedCompiledPatterns;
1540
1546
  }
1541
1547
  }, wt = class extends ot {
1542
- constructor(e, n, a, r, s, o, l, i, c) {
1548
+ constructor(e, n, a, r, s, o, i, l, c) {
1543
1549
  super(e, n, a, r);
1544
1550
  h(this, "_begin");
1545
1551
  h(this, "beginCaptures");
@@ -1550,7 +1556,7 @@ var ot = class {
1550
1556
  h(this, "patterns");
1551
1557
  h(this, "_cachedCompiledPatterns");
1552
1558
  h(this, "_cachedCompiledWhilePatterns");
1553
- this._begin = new et(s, this.id), this.beginCaptures = o, this.whileCaptures = i, this._while = new et(l, La), this.whileHasBackReferences = this._while.hasBackReferences, this.patterns = c.patterns, this.hasMissingPatterns = c.hasMissingPatterns, this._cachedCompiledPatterns = null, this._cachedCompiledWhilePatterns = null;
1559
+ this._begin = new et(s, this.id), this.beginCaptures = o, this.whileCaptures = l, this._while = new et(i, La), this.whileHasBackReferences = this._while.hasBackReferences, this.patterns = c.patterns, this.hasMissingPatterns = c.hasMissingPatterns, this._cachedCompiledPatterns = null, this._cachedCompiledWhilePatterns = null;
1554
1560
  }
1555
1561
  dispose() {
1556
1562
  this._cachedCompiledPatterns && (this._cachedCompiledPatterns.dispose(), this._cachedCompiledPatterns = null), this._cachedCompiledWhilePatterns && (this._cachedCompiledWhilePatterns.dispose(), this._cachedCompiledWhilePatterns = null);
@@ -1646,17 +1652,17 @@ var ot = class {
1646
1652
  for (const o in e) {
1647
1653
  if (o === "$vscodeTextmateLocation")
1648
1654
  continue;
1649
- const l = parseInt(o, 10);
1650
- l > s && (s = l);
1655
+ const i = parseInt(o, 10);
1656
+ i > s && (s = i);
1651
1657
  }
1652
1658
  for (let o = 0; o <= s; o++)
1653
1659
  r[o] = null;
1654
1660
  for (const o in e) {
1655
1661
  if (o === "$vscodeTextmateLocation")
1656
1662
  continue;
1657
- const l = parseInt(o, 10);
1658
- let i = 0;
1659
- e[o].patterns && (i = V.getCompiledRuleId(e[o], n, a)), r[l] = V.createCaptureRule(n, e[o].$vscodeTextmateLocation, e[o].name, e[o].contentName, i);
1663
+ const i = parseInt(o, 10);
1664
+ let l = 0;
1665
+ e[o].patterns && (l = V.getCompiledRuleId(e[o], n, a)), r[i] = V.createCaptureRule(n, e[o].$vscodeTextmateLocation, e[o].name, e[o].contentName, l);
1660
1666
  }
1661
1667
  }
1662
1668
  return r;
@@ -1665,18 +1671,18 @@ var ot = class {
1665
1671
  let r = [];
1666
1672
  if (e)
1667
1673
  for (let s = 0, o = e.length; s < o; s++) {
1668
- const l = e[s];
1669
- let i = -1;
1670
- if (l.include) {
1671
- const c = Ta(l.include);
1674
+ const i = e[s];
1675
+ let l = -1;
1676
+ if (i.include) {
1677
+ const c = Ta(i.include);
1672
1678
  switch (c.kind) {
1673
1679
  case 0:
1674
1680
  case 1:
1675
- i = V.getCompiledRuleId(a[l.include], n, a);
1681
+ l = V.getCompiledRuleId(a[i.include], n, a);
1676
1682
  break;
1677
1683
  case 2:
1678
1684
  let u = a[c.ruleName];
1679
- u && (i = V.getCompiledRuleId(u, n, a));
1685
+ u && (l = V.getCompiledRuleId(u, n, a));
1680
1686
  break;
1681
1687
  case 3:
1682
1688
  case 4:
@@ -1684,19 +1690,19 @@ var ot = class {
1684
1690
  if (f)
1685
1691
  if (d) {
1686
1692
  let m = f.repository[d];
1687
- m && (i = V.getCompiledRuleId(m, n, f.repository));
1693
+ m && (l = V.getCompiledRuleId(m, n, f.repository));
1688
1694
  } else
1689
- i = V.getCompiledRuleId(f.repository.$self, n, f.repository);
1695
+ l = V.getCompiledRuleId(f.repository.$self, n, f.repository);
1690
1696
  break;
1691
1697
  }
1692
1698
  } else
1693
- i = V.getCompiledRuleId(l, n, a);
1694
- if (i !== -1) {
1695
- const c = n.getRule(i);
1699
+ l = V.getCompiledRuleId(i, n, a);
1700
+ if (l !== -1) {
1701
+ const c = n.getRule(l);
1696
1702
  let u = !1;
1697
1703
  if ((c instanceof Gn || c instanceof rn || c instanceof wt) && c.hasMissingPatterns && c.patterns.length === 0 && (u = !0), u)
1698
1704
  continue;
1699
- r.push(i);
1705
+ r.push(l);
1700
1706
  }
1701
1707
  }
1702
1708
  return {
@@ -1714,10 +1720,10 @@ var ot = class {
1714
1720
  if (e && typeof e == "string") {
1715
1721
  const a = e.length;
1716
1722
  let r = 0, s = [], o = !1;
1717
- for (let l = 0; l < a; l++)
1718
- if (e.charAt(l) === "\\" && l + 1 < a) {
1719
- const c = e.charAt(l + 1);
1720
- c === "z" ? (s.push(e.substring(r, l)), s.push("$(?!\\n)(?<!\\n)"), r = l + 2) : (c === "A" || c === "G") && (o = !0), l++;
1723
+ for (let i = 0; i < a; i++)
1724
+ if (e.charAt(i) === "\\" && i + 1 < a) {
1725
+ const c = e.charAt(i + 1);
1726
+ c === "z" ? (s.push(e.substring(r, i)), s.push("$(?!\\n)(?<!\\n)"), r = i + 2) : (c === "A" || c === "G") && (o = !0), i++;
1721
1727
  }
1722
1728
  this.hasAnchor = o, r === 0 ? this.source = e : (s.push(e.substring(r, a)), this.source = s.join(""));
1723
1729
  } else
@@ -1739,9 +1745,9 @@ var ot = class {
1739
1745
  _buildAnchorCache() {
1740
1746
  if (typeof this.source != "string")
1741
1747
  throw new Error("This method should only be called if the source is a string");
1742
- let e = [], n = [], a = [], r = [], s, o, l, i;
1748
+ let e = [], n = [], a = [], r = [], s, o, i, l;
1743
1749
  for (s = 0, o = this.source.length; s < o; s++)
1744
- l = this.source.charAt(s), e[s] = l, n[s] = l, a[s] = l, r[s] = l, l === "\\" && s + 1 < o && (i = this.source.charAt(s + 1), i === "A" ? (e[s + 1] = "￿", n[s + 1] = "￿", a[s + 1] = "A", r[s + 1] = "A") : i === "G" ? (e[s + 1] = "￿", n[s + 1] = "G", a[s + 1] = "￿", r[s + 1] = "G") : (e[s + 1] = i, n[s + 1] = i, a[s + 1] = i, r[s + 1] = i), s++);
1750
+ i = this.source.charAt(s), e[s] = i, n[s] = i, a[s] = i, r[s] = i, i === "\\" && s + 1 < o && (l = this.source.charAt(s + 1), l === "A" ? (e[s + 1] = "￿", n[s + 1] = "￿", a[s + 1] = "A", r[s + 1] = "A") : l === "G" ? (e[s + 1] = "￿", n[s + 1] = "G", a[s + 1] = "￿", r[s + 1] = "G") : (e[s + 1] = l, n[s + 1] = l, a[s + 1] = l, r[s + 1] = l), s++);
1745
1751
  return {
1746
1752
  A0_G0: e.join(""),
1747
1753
  A0_G1: n.join(""),
@@ -1823,7 +1829,7 @@ var ot = class {
1823
1829
  constructor(t, e) {
1824
1830
  this.languageId = t, this.tokenType = e;
1825
1831
  }
1826
- }, fe, zs = (fe = class {
1832
+ }, he, zs = (he = class {
1827
1833
  constructor(e, n) {
1828
1834
  h(this, "_defaultAttributes");
1829
1835
  h(this, "_embeddedLanguagesMatcher");
@@ -1841,7 +1847,7 @@ var ot = class {
1841
1847
  return this._defaultAttributes;
1842
1848
  }
1843
1849
  getBasicScopeAttributes(e) {
1844
- return e === null ? fe._NULL_SCOPE_METADATA : this._getBasicScopeAttributes.get(e);
1850
+ return e === null ? he._NULL_SCOPE_METADATA : this._getBasicScopeAttributes.get(e);
1845
1851
  }
1846
1852
  /**
1847
1853
  * Given a produced TM scope, return the language that token describes or null if unknown.
@@ -1851,7 +1857,7 @@ var ot = class {
1851
1857
  return this._embeddedLanguagesMatcher.match(e) || 0;
1852
1858
  }
1853
1859
  _toStandardTokenType(e) {
1854
- const n = e.match(fe.STANDARD_TOKEN_TYPE_REGEXP);
1860
+ const n = e.match(he.STANDARD_TOKEN_TYPE_REGEXP);
1855
1861
  if (!n)
1856
1862
  return 8;
1857
1863
  switch (n[1]) {
@@ -1866,7 +1872,7 @@ var ot = class {
1866
1872
  }
1867
1873
  throw new Error("Unexpected match for standard token type!");
1868
1874
  }
1869
- }, h(fe, "_NULL_SCOPE_METADATA", new zt(0, 0)), h(fe, "STANDARD_TOKEN_TYPE_REGEXP", /\b(comment|string|regex|meta\.embedded)\b/), fe), qs = class {
1875
+ }, h(he, "_NULL_SCOPE_METADATA", new zt(0, 0)), h(he, "STANDARD_TOKEN_TYPE_REGEXP", /\b(comment|string|regex|meta\.embedded)\b/), he), qs = class {
1870
1876
  constructor(t) {
1871
1877
  h(this, "values");
1872
1878
  h(this, "scopesRegExp");
@@ -1897,11 +1903,11 @@ var Dn = class {
1897
1903
  this.stack = t, this.stoppedEarly = e;
1898
1904
  }
1899
1905
  };
1900
- function Oa(t, e, n, a, r, s, o, l) {
1901
- const i = e.content.length;
1906
+ function Oa(t, e, n, a, r, s, o, i) {
1907
+ const l = e.content.length;
1902
1908
  let c = !1, u = -1;
1903
1909
  if (o) {
1904
- const f = Ws(
1910
+ const f = Hs(
1905
1911
  t,
1906
1912
  e,
1907
1913
  n,
@@ -1913,13 +1919,13 @@ function Oa(t, e, n, a, r, s, o, l) {
1913
1919
  }
1914
1920
  const p = Date.now();
1915
1921
  for (; !c; ) {
1916
- if (l !== 0 && Date.now() - p > l)
1922
+ if (i !== 0 && Date.now() - p > i)
1917
1923
  return new Dn(r, !0);
1918
1924
  d();
1919
1925
  }
1920
1926
  return new Dn(r, !1);
1921
1927
  function d() {
1922
- const f = Hs(
1928
+ const f = Ws(
1923
1929
  t,
1924
1930
  e,
1925
1931
  n,
@@ -1928,7 +1934,7 @@ function Oa(t, e, n, a, r, s, o, l) {
1928
1934
  u
1929
1935
  );
1930
1936
  if (!f) {
1931
- s.produce(r, i), c = !0;
1937
+ s.produce(r, l), c = !0;
1932
1938
  return;
1933
1939
  }
1934
1940
  const m = f.captureIndices, _ = f.matchedRuleId, g = m && m.length > 0 ? m[0].end > a : !1;
@@ -1945,7 +1951,7 @@ function Oa(t, e, n, a, r, s, o, l) {
1945
1951
  ), s.produce(r, m[0].end);
1946
1952
  const w = r;
1947
1953
  if (r = r.parent, u = w.getAnchorPos(), !g && w.getEnterPos() === a) {
1948
- r = w, s.produce(r, i), c = !0;
1954
+ r = w, s.produce(r, l), c = !0;
1949
1955
  return;
1950
1956
  }
1951
1957
  } else {
@@ -1959,7 +1965,7 @@ function Oa(t, e, n, a, r, s, o, l) {
1959
1965
  _,
1960
1966
  a,
1961
1967
  u,
1962
- m[0].end === i,
1968
+ m[0].end === l,
1963
1969
  null,
1964
1970
  v,
1965
1971
  v
@@ -1987,7 +1993,7 @@ function Oa(t, e, n, a, r, s, o, l) {
1987
1993
  m
1988
1994
  )
1989
1995
  )), !g && w.hasSameRuleAs(r)) {
1990
- r = r.pop(), s.produce(r, i), c = !0;
1996
+ r = r.pop(), s.produce(r, l), c = !0;
1991
1997
  return;
1992
1998
  }
1993
1999
  } else if (b instanceof wt) {
@@ -2014,7 +2020,7 @@ function Oa(t, e, n, a, r, s, o, l) {
2014
2020
  m
2015
2021
  )
2016
2022
  )), !g && w.hasSameRuleAs(r)) {
2017
- r = r.pop(), s.produce(r, i), c = !0;
2023
+ r = r.pop(), s.produce(r, l), c = !0;
2018
2024
  return;
2019
2025
  }
2020
2026
  } else if (Ze(
@@ -2026,59 +2032,59 @@ function Oa(t, e, n, a, r, s, o, l) {
2026
2032
  b.captures,
2027
2033
  m
2028
2034
  ), s.produce(r, m[0].end), r = r.pop(), !g) {
2029
- r = r.safePop(), s.produce(r, i), c = !0;
2035
+ r = r.safePop(), s.produce(r, l), c = !0;
2030
2036
  return;
2031
2037
  }
2032
2038
  }
2033
2039
  m[0].end > a && (a = m[0].end, n = !1);
2034
2040
  }
2035
2041
  }
2036
- function Ws(t, e, n, a, r, s) {
2042
+ function Hs(t, e, n, a, r, s) {
2037
2043
  let o = r.beginRuleCapturedEOL ? 0 : -1;
2038
- const l = [];
2039
- for (let i = r; i; i = i.pop()) {
2040
- const c = i.getRule(t);
2041
- c instanceof wt && l.push({
2044
+ const i = [];
2045
+ for (let l = r; l; l = l.pop()) {
2046
+ const c = l.getRule(t);
2047
+ c instanceof wt && i.push({
2042
2048
  rule: c,
2043
- stack: i
2049
+ stack: l
2044
2050
  });
2045
2051
  }
2046
- for (let i = l.pop(); i; i = l.pop()) {
2047
- const { ruleScanner: c, findOptions: u } = Zs(i.rule, t, i.stack.endRule, n, a === o), p = c.findNextMatchSync(e, a, u);
2052
+ for (let l = i.pop(); l; l = i.pop()) {
2053
+ const { ruleScanner: c, findOptions: u } = Zs(l.rule, t, l.stack.endRule, n, a === o), p = c.findNextMatchSync(e, a, u);
2048
2054
  if (p) {
2049
2055
  if (p.ruleId !== La) {
2050
- r = i.stack.pop();
2056
+ r = l.stack.pop();
2051
2057
  break;
2052
2058
  }
2053
- p.captureIndices && p.captureIndices.length && (s.produce(i.stack, p.captureIndices[0].start), Ze(t, e, n, i.stack, s, i.rule.whileCaptures, p.captureIndices), s.produce(i.stack, p.captureIndices[0].end), o = p.captureIndices[0].end, p.captureIndices[0].end > a && (a = p.captureIndices[0].end, n = !1));
2059
+ p.captureIndices && p.captureIndices.length && (s.produce(l.stack, p.captureIndices[0].start), Ze(t, e, n, l.stack, s, l.rule.whileCaptures, p.captureIndices), s.produce(l.stack, p.captureIndices[0].end), o = p.captureIndices[0].end, p.captureIndices[0].end > a && (a = p.captureIndices[0].end, n = !1));
2054
2060
  } else {
2055
- r = i.stack.pop();
2061
+ r = l.stack.pop();
2056
2062
  break;
2057
2063
  }
2058
2064
  }
2059
2065
  return { stack: r, linePos: a, anchorPosition: o, isFirstLine: n };
2060
2066
  }
2061
- function Hs(t, e, n, a, r, s) {
2062
- const o = Vs(t, e, n, a, r, s), l = t.getInjections();
2063
- if (l.length === 0)
2067
+ function Ws(t, e, n, a, r, s) {
2068
+ const o = Vs(t, e, n, a, r, s), i = t.getInjections();
2069
+ if (i.length === 0)
2064
2070
  return o;
2065
- const i = Xs(l, t, e, n, a, r, s);
2066
- if (!i)
2071
+ const l = Xs(i, t, e, n, a, r, s);
2072
+ if (!l)
2067
2073
  return o;
2068
2074
  if (!o)
2069
- return i;
2070
- const c = o.captureIndices[0].start, u = i.captureIndices[0].start;
2071
- return u < c || i.priorityMatch && u === c ? i : o;
2075
+ return l;
2076
+ const c = o.captureIndices[0].start, u = l.captureIndices[0].start;
2077
+ return u < c || l.priorityMatch && u === c ? l : o;
2072
2078
  }
2073
2079
  function Vs(t, e, n, a, r, s) {
2074
- const o = r.getRule(t), { ruleScanner: l, findOptions: i } = Ga(o, t, r.endRule, n, a === s), c = l.findNextMatchSync(e, a, i);
2080
+ const o = r.getRule(t), { ruleScanner: i, findOptions: l } = Ga(o, t, r.endRule, n, a === s), c = i.findNextMatchSync(e, a, l);
2075
2081
  return c ? {
2076
2082
  captureIndices: c.captureIndices,
2077
2083
  matchedRuleId: c.ruleId
2078
2084
  } : null;
2079
2085
  }
2080
2086
  function Xs(t, e, n, a, r, s, o) {
2081
- let l = Number.MAX_VALUE, i = null, c, u = 0;
2087
+ let i = Number.MAX_VALUE, l = null, c, u = 0;
2082
2088
  const p = s.contentNameScopesList.getScopeNames();
2083
2089
  for (let d = 0, f = t.length; d < f; d++) {
2084
2090
  const m = t[d];
@@ -2088,12 +2094,12 @@ function Xs(t, e, n, a, r, s, o) {
2088
2094
  if (!w)
2089
2095
  continue;
2090
2096
  const k = w.captureIndices[0].start;
2091
- if (!(k >= l) && (l = k, i = w.captureIndices, c = w.ruleId, u = m.priority, l === r))
2097
+ if (!(k >= i) && (i = k, l = w.captureIndices, c = w.ruleId, u = m.priority, i === r))
2092
2098
  break;
2093
2099
  }
2094
- return i ? {
2100
+ return l ? {
2095
2101
  priorityMatch: u === -1,
2096
- captureIndices: i,
2102
+ captureIndices: l,
2097
2103
  matchedRuleId: c
2098
2104
  } : null;
2099
2105
  }
@@ -2114,8 +2120,8 @@ function Zs(t, e, n, a, r) {
2114
2120
  function Ze(t, e, n, a, r, s, o) {
2115
2121
  if (s.length === 0)
2116
2122
  return;
2117
- const l = e.content, i = Math.min(s.length, o.length), c = [], u = o[0].end;
2118
- for (let p = 0; p < i; p++) {
2123
+ const i = e.content, l = Math.min(s.length, o.length), c = [], u = o[0].end;
2124
+ for (let p = 0; p < l; p++) {
2119
2125
  const d = s[p];
2120
2126
  if (d === null)
2121
2127
  continue;
@@ -2127,7 +2133,7 @@ function Ze(t, e, n, a, r, s, o) {
2127
2133
  for (; c.length > 0 && c[c.length - 1].endPos <= f.start; )
2128
2134
  r.produceFromScopes(c[c.length - 1].scopes, c[c.length - 1].endPos), c.pop();
2129
2135
  if (c.length > 0 ? r.produceFromScopes(c[c.length - 1].scopes, f.start) : r.produce(a, f.start), d.retokenizeCapturedWithRuleId) {
2130
- const _ = d.getName(l, o), g = a.contentNameScopesList.pushAttributed(_, t), b = d.getContentName(l, o), w = g.pushAttributed(b, t), k = a.push(d.retokenizeCapturedWithRuleId, f.start, -1, !1, null, g, w), v = t.createOnigString(l.substring(0, f.end));
2136
+ const _ = d.getName(i, o), g = a.contentNameScopesList.pushAttributed(_, t), b = d.getContentName(i, o), w = g.pushAttributed(b, t), k = a.push(d.retokenizeCapturedWithRuleId, f.start, -1, !1, null, g, w), v = t.createOnigString(i.substring(0, f.end));
2131
2137
  Oa(
2132
2138
  t,
2133
2139
  v,
@@ -2141,7 +2147,7 @@ function Ze(t, e, n, a, r, s, o) {
2141
2147
  ), Ba(v);
2142
2148
  continue;
2143
2149
  }
2144
- const m = d.getName(l, o);
2150
+ const m = d.getName(i, o);
2145
2151
  if (m !== null) {
2146
2152
  const g = (c.length > 0 ? c[c.length - 1].scopes : a.contentNameScopesList).pushAttributed(m, t);
2147
2153
  c.push(new Ks(g, f.end));
@@ -2157,7 +2163,7 @@ var Ks = class {
2157
2163
  this.scopes = t, this.endPos = e;
2158
2164
  }
2159
2165
  };
2160
- function Js(t, e, n, a, r, s, o, l) {
2166
+ function Js(t, e, n, a, r, s, o, i) {
2161
2167
  return new Ys(
2162
2168
  t,
2163
2169
  e,
@@ -2166,18 +2172,18 @@ function Js(t, e, n, a, r, s, o, l) {
2166
2172
  r,
2167
2173
  s,
2168
2174
  o,
2169
- l
2175
+ i
2170
2176
  );
2171
2177
  }
2172
2178
  function Un(t, e, n, a, r) {
2173
2179
  const s = _t(e, kt), o = ja.getCompiledRuleId(n, a, r.repository);
2174
- for (const l of s)
2180
+ for (const i of s)
2175
2181
  t.push({
2176
2182
  debugSelector: e,
2177
- matcher: l.matcher,
2183
+ matcher: i.matcher,
2178
2184
  ruleId: o,
2179
2185
  grammar: r,
2180
- priority: l.priority
2186
+ priority: i.priority
2181
2187
  });
2182
2188
  }
2183
2189
  function kt(t, e) {
@@ -2200,7 +2206,7 @@ function Qs(t, e) {
2200
2206
  return t.length > n && t.substr(0, n) === e && t[n] === ".";
2201
2207
  }
2202
2208
  var Ys = class {
2203
- constructor(t, e, n, a, r, s, o, l) {
2209
+ constructor(t, e, n, a, r, s, o, i) {
2204
2210
  h(this, "_rootId");
2205
2211
  h(this, "_lastRuleId");
2206
2212
  h(this, "_ruleId2desc");
@@ -2210,16 +2216,16 @@ var Ys = class {
2210
2216
  h(this, "_injections");
2211
2217
  h(this, "_basicScopeAttributesProvider");
2212
2218
  h(this, "_tokenTypeMatchers");
2213
- if (this._rootScopeName = t, this.balancedBracketSelectors = s, this._onigLib = l, this._basicScopeAttributesProvider = new zs(
2219
+ if (this._rootScopeName = t, this.balancedBracketSelectors = s, this._onigLib = i, this._basicScopeAttributesProvider = new zs(
2214
2220
  n,
2215
2221
  a
2216
2222
  ), this._rootId = -1, this._lastRuleId = 0, this._ruleId2desc = [null], this._includedGrammars = {}, this._grammarRepository = o, this._grammar = zn(e, null), this._injections = null, this._tokenTypeMatchers = [], r)
2217
- for (const i of Object.keys(r)) {
2218
- const c = _t(i, kt);
2223
+ for (const l of Object.keys(r)) {
2224
+ const c = _t(l, kt);
2219
2225
  for (const u of c)
2220
2226
  this._tokenTypeMatchers.push({
2221
2227
  matcher: u.matcher,
2222
- type: r[i]
2228
+ type: r[l]
2223
2229
  });
2224
2230
  }
2225
2231
  }
@@ -2257,15 +2263,15 @@ var Ys = class {
2257
2263
  );
2258
2264
  const s = this._grammarRepository.injections(n);
2259
2265
  s && s.forEach((o) => {
2260
- const l = this.getExternalGrammar(o);
2261
- if (l) {
2262
- const i = l.injectionSelector;
2263
- i && Un(
2266
+ const i = this.getExternalGrammar(o);
2267
+ if (i) {
2268
+ const l = i.injectionSelector;
2269
+ l && Un(
2264
2270
  e,
2265
- i,
2266
2271
  l,
2272
+ i,
2267
2273
  this,
2268
- l
2274
+ i
2269
2275
  );
2270
2276
  }
2271
2277
  });
@@ -2353,26 +2359,26 @@ var Ys = class {
2353
2359
  r = !1, e.reset();
2354
2360
  t = t + `
2355
2361
  `;
2356
- const s = this.createOnigString(t), o = s.content.length, l = new to(
2362
+ const s = this.createOnigString(t), o = s.content.length, i = new to(
2357
2363
  n,
2358
2364
  t,
2359
2365
  this._tokenTypeMatchers,
2360
2366
  this.balancedBracketSelectors
2361
- ), i = Oa(
2367
+ ), l = Oa(
2362
2368
  this,
2363
2369
  s,
2364
2370
  r,
2365
2371
  0,
2366
2372
  e,
2367
- l,
2373
+ i,
2368
2374
  !0,
2369
2375
  a
2370
2376
  );
2371
2377
  return Ba(s), {
2372
2378
  lineLength: o,
2373
- lineTokens: l,
2374
- ruleStack: i.stack,
2375
- stoppedEarly: i.stoppedEarly
2379
+ lineTokens: i,
2380
+ ruleStack: l.stack,
2381
+ stoppedEarly: l.stoppedEarly
2376
2382
  };
2377
2383
  }
2378
2384
  };
@@ -2405,12 +2411,12 @@ var Ke = class le {
2405
2411
  return new le(null, new Ut(null, e), n);
2406
2412
  }
2407
2413
  static createRootAndLookUpScopeName(e, n, a) {
2408
- const r = a.getMetadataForScope(e), s = new Ut(null, e), o = a.themeProvider.themeMatch(s), l = le.mergeAttributes(
2414
+ const r = a.getMetadataForScope(e), s = new Ut(null, e), o = a.themeProvider.themeMatch(s), i = le.mergeAttributes(
2409
2415
  n,
2410
2416
  r,
2411
2417
  o
2412
2418
  );
2413
- return new le(null, s, l);
2419
+ return new le(null, s, i);
2414
2420
  }
2415
2421
  get scopeName() {
2416
2422
  return this.scopePath.scopeName;
@@ -2454,12 +2460,12 @@ var Ke = class le {
2454
2460
  return r;
2455
2461
  }
2456
2462
  static _pushAttributed(e, n, a) {
2457
- const r = a.getMetadataForScope(n), s = e.scopePath.push(n), o = a.themeProvider.themeMatch(s), l = le.mergeAttributes(
2463
+ const r = a.getMetadataForScope(n), s = e.scopePath.push(n), o = a.themeProvider.themeMatch(s), i = le.mergeAttributes(
2458
2464
  e.tokenAttributes,
2459
2465
  r,
2460
2466
  o
2461
2467
  );
2462
- return new le(e, s, l);
2468
+ return new le(e, s, i);
2463
2469
  }
2464
2470
  getScopeNames() {
2465
2471
  return this.scopePath.getSegments();
@@ -2475,7 +2481,7 @@ var Ke = class le {
2475
2481
  }), a = a.parent;
2476
2482
  return a === e ? n.reverse() : void 0;
2477
2483
  }
2478
- }, te, sn = (te = class {
2484
+ }, ne, sn = (ne = class {
2479
2485
  /**
2480
2486
  * Invariant:
2481
2487
  * ```
@@ -2487,7 +2493,7 @@ var Ke = class le {
2487
2493
  * }
2488
2494
  * ```
2489
2495
  */
2490
- constructor(e, n, a, r, s, o, l, i) {
2496
+ constructor(e, n, a, r, s, o, i, l) {
2491
2497
  h(this, "_stackElementBrand");
2492
2498
  /**
2493
2499
  * The position on the current line where this state was pushed.
@@ -2505,10 +2511,10 @@ var Ke = class le {
2505
2511
  * The depth of the stack.
2506
2512
  */
2507
2513
  h(this, "depth");
2508
- this.parent = e, this.ruleId = n, this.beginRuleCapturedEOL = s, this.endRule = o, this.nameScopesList = l, this.contentNameScopesList = i, this.depth = this.parent ? this.parent.depth + 1 : 1, this._enterPos = a, this._anchorPos = r;
2514
+ this.parent = e, this.ruleId = n, this.beginRuleCapturedEOL = s, this.endRule = o, this.nameScopesList = i, this.contentNameScopesList = l, this.depth = this.parent ? this.parent.depth + 1 : 1, this._enterPos = a, this._anchorPos = r;
2509
2515
  }
2510
2516
  equals(e) {
2511
- return e === null ? !1 : te._equals(this, e);
2517
+ return e === null ? !1 : ne._equals(this, e);
2512
2518
  }
2513
2519
  static _equals(e, n) {
2514
2520
  return e === n ? !0 : this._structuralEquals(e, n) ? Ke.equals(e.contentNameScopesList, n.contentNameScopesList) : !1;
@@ -2533,7 +2539,7 @@ var Ke = class le {
2533
2539
  e._enterPos = -1, e._anchorPos = -1, e = e.parent;
2534
2540
  }
2535
2541
  reset() {
2536
- te._reset(this);
2542
+ ne._reset(this);
2537
2543
  }
2538
2544
  pop() {
2539
2545
  return this.parent;
@@ -2541,8 +2547,8 @@ var Ke = class le {
2541
2547
  safePop() {
2542
2548
  return this.parent ? this.parent : this;
2543
2549
  }
2544
- push(e, n, a, r, s, o, l) {
2545
- return new te(
2550
+ push(e, n, a, r, s, o, i) {
2551
+ return new ne(
2546
2552
  this,
2547
2553
  e,
2548
2554
  n,
@@ -2550,7 +2556,7 @@ var Ke = class le {
2550
2556
  r,
2551
2557
  s,
2552
2558
  o,
2553
- l
2559
+ i
2554
2560
  );
2555
2561
  }
2556
2562
  getEnterPos() {
@@ -2582,7 +2588,7 @@ var Ke = class le {
2582
2588
  );
2583
2589
  }
2584
2590
  withEndRule(e) {
2585
- return this.endRule === e ? this : new te(
2591
+ return this.endRule === e ? this : new ne(
2586
2592
  this.parent,
2587
2593
  this.ruleId,
2588
2594
  this._enterPos,
@@ -2615,7 +2621,7 @@ var Ke = class le {
2615
2621
  }
2616
2622
  static pushFrame(e, n) {
2617
2623
  const a = Ke.fromExtension((e == null ? void 0 : e.nameScopesList) ?? null, n.nameScopesList);
2618
- return new te(
2624
+ return new ne(
2619
2625
  e,
2620
2626
  n.ruleId,
2621
2627
  n.enterPos ?? -1,
@@ -2627,7 +2633,7 @@ var Ke = class le {
2627
2633
  );
2628
2634
  }
2629
2635
  }, // TODO remove me
2630
- h(te, "NULL", new te(
2636
+ h(ne, "NULL", new ne(
2631
2637
  null,
2632
2638
  0,
2633
2639
  0,
@@ -2636,7 +2642,7 @@ h(te, "NULL", new te(
2636
2642
  null,
2637
2643
  null,
2638
2644
  null
2639
- )), te), eo = class {
2645
+ )), ne), eo = class {
2640
2646
  constructor(t, e) {
2641
2647
  h(this, "balancedBracketScopes");
2642
2648
  h(this, "unbalancedBracketScopes");
@@ -2692,11 +2698,11 @@ h(te, "NULL", new te(
2692
2698
  let r = (t == null ? void 0 : t.tokenAttributes) ?? 0, s = !1;
2693
2699
  if ((a = this.balancedBracketSelectors) != null && a.matchesAlways && (s = !0), this._tokenTypeOverrides.length > 0 || this.balancedBracketSelectors && !this.balancedBracketSelectors.matchesAlways && !this.balancedBracketSelectors.matchesNever) {
2694
2700
  const o = (t == null ? void 0 : t.getScopeNames()) ?? [];
2695
- for (const l of this._tokenTypeOverrides)
2696
- l.matcher(o) && (r = ze.set(
2701
+ for (const i of this._tokenTypeOverrides)
2702
+ i.matcher(o) && (r = ze.set(
2697
2703
  r,
2698
2704
  0,
2699
- l.type,
2705
+ i.type,
2700
2706
  null,
2701
2707
  -1,
2702
2708
  0,
@@ -2863,7 +2869,7 @@ h(te, "NULL", new te(
2863
2869
  _loadGrammar(e, n, a, r, s) {
2864
2870
  const o = new Ps(this._syncRegistry, e);
2865
2871
  for (; o.Q.length > 0; )
2866
- o.Q.map((l) => this._loadSingleGrammar(l.scopeName)), o.processQueue();
2872
+ o.Q.map((i) => this._loadSingleGrammar(i.scopeName)), o.processQueue();
2867
2873
  return this._grammarForScopeName(
2868
2874
  e,
2869
2875
  n,
@@ -2976,13 +2982,13 @@ Q.prototype.property = "";
2976
2982
  Q.prototype.spaceSeparated = !1;
2977
2983
  Q.prototype.space = void 0;
2978
2984
  let so = 0;
2979
- const x = Te(), F = Te(), cn = Te(), y = Te(), P = Te(), De = Te(), Y = Te();
2985
+ const S = Te(), F = Te(), cn = Te(), y = Te(), P = Te(), De = Te(), Y = Te();
2980
2986
  function Te() {
2981
2987
  return 2 ** ++so;
2982
2988
  }
2983
2989
  const un = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
2984
2990
  __proto__: null,
2985
- boolean: x,
2991
+ boolean: S,
2986
2992
  booleanish: F,
2987
2993
  commaOrSpaceSeparated: Y,
2988
2994
  commaSeparated: De,
@@ -3111,38 +3117,38 @@ const oo = qe({
3111
3117
  accessKey: P,
3112
3118
  action: null,
3113
3119
  allow: null,
3114
- allowFullScreen: x,
3115
- allowPaymentRequest: x,
3116
- allowUserMedia: x,
3120
+ allowFullScreen: S,
3121
+ allowPaymentRequest: S,
3122
+ allowUserMedia: S,
3117
3123
  alt: null,
3118
3124
  as: null,
3119
- async: x,
3125
+ async: S,
3120
3126
  autoCapitalize: null,
3121
3127
  autoComplete: P,
3122
- autoFocus: x,
3123
- autoPlay: x,
3128
+ autoFocus: S,
3129
+ autoPlay: S,
3124
3130
  blocking: P,
3125
3131
  capture: null,
3126
3132
  charSet: null,
3127
- checked: x,
3133
+ checked: S,
3128
3134
  cite: null,
3129
3135
  className: P,
3130
3136
  cols: y,
3131
3137
  colSpan: null,
3132
3138
  content: null,
3133
3139
  contentEditable: F,
3134
- controls: x,
3140
+ controls: S,
3135
3141
  controlsList: P,
3136
3142
  coords: y | De,
3137
3143
  crossOrigin: null,
3138
3144
  data: null,
3139
3145
  dateTime: null,
3140
3146
  decoding: null,
3141
- default: x,
3142
- defer: x,
3147
+ default: S,
3148
+ defer: S,
3143
3149
  dir: null,
3144
3150
  dirName: null,
3145
- disabled: x,
3151
+ disabled: S,
3146
3152
  download: cn,
3147
3153
  draggable: F,
3148
3154
  encType: null,
@@ -3152,7 +3158,7 @@ const oo = qe({
3152
3158
  formAction: null,
3153
3159
  formEncType: null,
3154
3160
  formMethod: null,
3155
- formNoValidate: x,
3161
+ formNoValidate: S,
3156
3162
  formTarget: null,
3157
3163
  headers: P,
3158
3164
  height: y,
@@ -3165,15 +3171,15 @@ const oo = qe({
3165
3171
  id: null,
3166
3172
  imageSizes: null,
3167
3173
  imageSrcSet: null,
3168
- inert: x,
3174
+ inert: S,
3169
3175
  inputMode: null,
3170
3176
  integrity: null,
3171
3177
  is: null,
3172
- isMap: x,
3178
+ isMap: S,
3173
3179
  itemId: null,
3174
3180
  itemProp: P,
3175
3181
  itemRef: P,
3176
- itemScope: x,
3182
+ itemScope: S,
3177
3183
  itemType: P,
3178
3184
  kind: null,
3179
3185
  label: null,
@@ -3181,7 +3187,7 @@ const oo = qe({
3181
3187
  language: null,
3182
3188
  list: null,
3183
3189
  loading: null,
3184
- loop: x,
3190
+ loop: S,
3185
3191
  low: y,
3186
3192
  manifest: null,
3187
3193
  max: null,
@@ -3190,12 +3196,12 @@ const oo = qe({
3190
3196
  method: null,
3191
3197
  min: null,
3192
3198
  minLength: y,
3193
- multiple: x,
3194
- muted: x,
3199
+ multiple: S,
3200
+ muted: S,
3195
3201
  name: null,
3196
3202
  nonce: null,
3197
- noModule: x,
3198
- noValidate: x,
3203
+ noModule: S,
3204
+ noValidate: S,
3199
3205
  onAbort: null,
3200
3206
  onAfterPrint: null,
3201
3207
  onAuxClick: null,
@@ -3284,31 +3290,31 @@ const oo = qe({
3284
3290
  onVolumeChange: null,
3285
3291
  onWaiting: null,
3286
3292
  onWheel: null,
3287
- open: x,
3293
+ open: S,
3288
3294
  optimum: y,
3289
3295
  pattern: null,
3290
3296
  ping: P,
3291
3297
  placeholder: null,
3292
- playsInline: x,
3298
+ playsInline: S,
3293
3299
  popover: null,
3294
3300
  popoverTarget: null,
3295
3301
  popoverTargetAction: null,
3296
3302
  poster: null,
3297
3303
  preload: null,
3298
- readOnly: x,
3304
+ readOnly: S,
3299
3305
  referrerPolicy: null,
3300
3306
  rel: P,
3301
- required: x,
3302
- reversed: x,
3307
+ required: S,
3308
+ reversed: S,
3303
3309
  rows: y,
3304
3310
  rowSpan: y,
3305
3311
  sandbox: P,
3306
3312
  scope: null,
3307
- scoped: x,
3308
- seamless: x,
3309
- selected: x,
3310
- shadowRootClonable: x,
3311
- shadowRootDelegatesFocus: x,
3313
+ scoped: S,
3314
+ seamless: S,
3315
+ selected: S,
3316
+ shadowRootClonable: S,
3317
+ shadowRootDelegatesFocus: S,
3312
3318
  shadowRootMode: null,
3313
3319
  shape: null,
3314
3320
  size: y,
@@ -3328,7 +3334,7 @@ const oo = qe({
3328
3334
  title: null,
3329
3335
  translate: null,
3330
3336
  type: null,
3331
- typeMustMatch: x,
3337
+ typeMustMatch: S,
3332
3338
  useMap: null,
3333
3339
  value: F,
3334
3340
  width: y,
@@ -3374,9 +3380,9 @@ const oo = qe({
3374
3380
  // `<object>`
3375
3381
  color: null,
3376
3382
  // `<font>` and `<hr>`. Use CSS instead
3377
- compact: x,
3383
+ compact: S,
3378
3384
  // Lists. Use CSS to reduce space between items instead
3379
- declare: x,
3385
+ declare: S,
3380
3386
  // `<object>`
3381
3387
  event: null,
3382
3388
  // `<script>`
@@ -3400,13 +3406,13 @@ const oo = qe({
3400
3406
  // `<body>`
3401
3407
  marginWidth: y,
3402
3408
  // `<body>`
3403
- noResize: x,
3409
+ noResize: S,
3404
3410
  // `<frame>`
3405
- noHref: x,
3411
+ noHref: S,
3406
3412
  // `<area>`. Use no href instead of an explicit `nohref`
3407
- noShade: x,
3413
+ noShade: S,
3408
3414
  // `<hr>`. Use background-color and height instead of borders
3409
- noWrap: x,
3415
+ noWrap: S,
3410
3416
  // `<td>` and `<th>`
3411
3417
  object: null,
3412
3418
  // `<applet>`
@@ -3446,8 +3452,8 @@ const oo = qe({
3446
3452
  allowTransparency: null,
3447
3453
  autoCorrect: null,
3448
3454
  autoSave: null,
3449
- disablePictureInPicture: x,
3450
- disableRemotePlayback: x,
3455
+ disablePictureInPicture: S,
3456
+ disableRemotePlayback: S,
3451
3457
  prefix: null,
3452
3458
  property: null,
3453
3459
  results: y,
@@ -3682,7 +3688,7 @@ const oo = qe({
3682
3688
  dur: null,
3683
3689
  divisor: y,
3684
3690
  dominantBaseline: null,
3685
- download: x,
3691
+ download: S,
3686
3692
  dx: null,
3687
3693
  dy: null,
3688
3694
  edgeMode: null,
@@ -4029,18 +4035,18 @@ const oo = qe({
4029
4035
  transform(t, e) {
4030
4036
  return "xlink:" + e.slice(5).toLowerCase();
4031
4037
  }
4032
- }), Wa = qe({
4038
+ }), Ha = qe({
4033
4039
  attributes: { xmlnsxlink: "xmlns:xlink" },
4034
4040
  properties: { xmlnsXLink: null, xmlns: null },
4035
4041
  space: "xmlns",
4036
4042
  transform: za
4037
- }), Ha = qe({
4043
+ }), Wa = qe({
4038
4044
  properties: { xmlBase: null, xmlLang: null, xmlSpace: null },
4039
4045
  space: "xml",
4040
4046
  transform(t, e) {
4041
4047
  return "xml:" + e.slice(3).toLowerCase();
4042
4048
  }
4043
- }), lo = /[A-Z]/g, Wn = /-[a-z]/g, co = /^data[-\w.:]+$/i;
4049
+ }), lo = /[A-Z]/g, Hn = /-[a-z]/g, co = /^data[-\w.:]+$/i;
4044
4050
  function uo(t, e) {
4045
4051
  const n = ln(e);
4046
4052
  let a = e, r = Q;
@@ -4048,11 +4054,11 @@ function uo(t, e) {
4048
4054
  return t.property[t.normal[n]];
4049
4055
  if (n.length > 4 && n.slice(0, 4) === "data" && co.test(e)) {
4050
4056
  if (e.charAt(4) === "-") {
4051
- const s = e.slice(5).replace(Wn, mo);
4057
+ const s = e.slice(5).replace(Hn, mo);
4052
4058
  a = "data" + s.charAt(0).toUpperCase() + s.slice(1);
4053
4059
  } else {
4054
4060
  const s = e.slice(4);
4055
- if (!Wn.test(s)) {
4061
+ if (!Hn.test(s)) {
4056
4062
  let o = s.replace(lo, po);
4057
4063
  o.charAt(0) !== "-" && (o = "-" + o), e = "data" + o;
4058
4064
  }
@@ -4067,15 +4073,15 @@ function po(t) {
4067
4073
  function mo(t) {
4068
4074
  return t.charAt(1).toUpperCase();
4069
4075
  }
4070
- const fo = Fa([Da, oo, qa, Wa, Ha], "html"), Va = Fa([Da, io, qa, Wa, Ha], "svg"), Hn = {}.hasOwnProperty;
4076
+ const fo = Fa([Da, oo, qa, Ha, Wa], "html"), Va = Fa([Da, io, qa, Ha, Wa], "svg"), Wn = {}.hasOwnProperty;
4071
4077
  function ho(t, e) {
4072
4078
  const n = e || {};
4073
4079
  function a(r, ...s) {
4074
4080
  let o = a.invalid;
4075
- const l = a.handlers;
4076
- if (r && Hn.call(r, t)) {
4077
- const i = String(r[t]);
4078
- o = Hn.call(l, i) ? l[i] : a.unknown;
4081
+ const i = a.handlers;
4082
+ if (r && Wn.call(r, t)) {
4083
+ const l = String(r[t]);
4084
+ o = Wn.call(i, l) ? i[l] : a.unknown;
4079
4085
  }
4080
4086
  if (o)
4081
4087
  return o.call(this, r, ...s);
@@ -4236,7 +4242,7 @@ const Eo = [
4236
4242
  "yacute",
4237
4243
  "yen",
4238
4244
  "yuml"
4239
- ], Wt = {
4245
+ ], Ht = {
4240
4246
  nbsp: " ",
4241
4247
  iexcl: "¡",
4242
4248
  cent: "¢",
@@ -4500,8 +4506,8 @@ const Eo = [
4500
4506
  "times"
4501
4507
  ], Xa = {}.hasOwnProperty, pn = {};
4502
4508
  let ut;
4503
- for (ut in Wt)
4504
- Xa.call(Wt, ut) && (pn[Wt[ut]] = ut);
4509
+ for (ut in Ht)
4510
+ Xa.call(Ht, ut) && (pn[Ht[ut]] = ut);
4505
4511
  const Io = /[^\dA-Za-z]/;
4506
4512
  function Ro(t, e, n, a) {
4507
4513
  const r = String.fromCharCode(t);
@@ -4577,11 +4583,11 @@ function Ka(t) {
4577
4583
  return e;
4578
4584
  function e(n, a, r) {
4579
4585
  const s = n ? n.children : Fo;
4580
- let o = (a || 0) + t, l = s[o];
4586
+ let o = (a || 0) + t, i = s[o];
4581
4587
  if (!r)
4582
- for (; l && kn(l); )
4583
- o += t, l = s[o];
4584
- return l;
4588
+ for (; i && kn(i); )
4589
+ o += t, i = s[o];
4590
+ return i;
4585
4591
  }
4586
4592
  }
4587
4593
  const Do = {}.hasOwnProperty;
@@ -4593,13 +4599,13 @@ function Ja(t) {
4593
4599
  }
4594
4600
  const vn = Ja({
4595
4601
  body: zo,
4596
- caption: Ht,
4597
- colgroup: Ht,
4602
+ caption: Wt,
4603
+ colgroup: Wt,
4598
4604
  dd: Vo,
4599
- dt: Ho,
4600
- head: Ht,
4605
+ dt: Wo,
4606
+ head: Wt,
4601
4607
  html: Uo,
4602
- li: Wo,
4608
+ li: Ho,
4603
4609
  optgroup: Xo,
4604
4610
  option: Zo,
4605
4611
  p: qo,
@@ -4612,7 +4618,7 @@ const vn = Ja({
4612
4618
  thead: Ko,
4613
4619
  tr: Yo
4614
4620
  });
4615
- function Ht(t, e, n) {
4621
+ function Wt(t, e, n) {
4616
4622
  const a = z(n, e, !0);
4617
4623
  return !a || a.type !== "comment" && !(a.type === "text" && kn(a.value.charAt(0)));
4618
4624
  }
@@ -4629,11 +4635,11 @@ function qo(t, e, n) {
4629
4635
  return a ? a.type === "element" && (a.tagName === "address" || a.tagName === "article" || a.tagName === "aside" || a.tagName === "blockquote" || a.tagName === "details" || a.tagName === "div" || a.tagName === "dl" || a.tagName === "fieldset" || a.tagName === "figcaption" || a.tagName === "figure" || a.tagName === "footer" || a.tagName === "form" || a.tagName === "h1" || a.tagName === "h2" || a.tagName === "h3" || a.tagName === "h4" || a.tagName === "h5" || a.tagName === "h6" || a.tagName === "header" || a.tagName === "hgroup" || a.tagName === "hr" || a.tagName === "main" || a.tagName === "menu" || a.tagName === "nav" || a.tagName === "ol" || a.tagName === "p" || a.tagName === "pre" || a.tagName === "section" || a.tagName === "table" || a.tagName === "ul") : !n || // Confusing parent.
4630
4636
  !(n.type === "element" && (n.tagName === "a" || n.tagName === "audio" || n.tagName === "del" || n.tagName === "ins" || n.tagName === "map" || n.tagName === "noscript" || n.tagName === "video"));
4631
4637
  }
4632
- function Wo(t, e, n) {
4638
+ function Ho(t, e, n) {
4633
4639
  const a = z(n, e);
4634
4640
  return !a || a.type === "element" && a.tagName === "li";
4635
4641
  }
4636
- function Ho(t, e, n) {
4642
+ function Wo(t, e, n) {
4637
4643
  const a = z(n, e);
4638
4644
  return !!(a && a.type === "element" && (a.tagName === "dt" || a.tagName === "dd"));
4639
4645
  }
@@ -4738,13 +4744,13 @@ const pt = {
4738
4744
  function oi(t, e, n, a) {
4739
4745
  const r = a.schema, s = r.space === "svg" ? !1 : a.settings.omitOptionalTags;
4740
4746
  let o = r.space === "svg" ? a.settings.closeEmptyElements : a.settings.voids.includes(t.tagName.toLowerCase());
4741
- const l = [];
4742
- let i;
4747
+ const i = [];
4748
+ let l;
4743
4749
  r.space === "html" && t.tagName === "svg" && (a.schema = Va);
4744
4750
  const c = ii(a, t.properties), u = a.all(
4745
4751
  r.space === "html" && t.tagName === "template" ? t.content : t
4746
4752
  );
4747
- return a.schema = r, u && (o = !1), (c || !s || !ei(t, e, n)) && (l.push("<", t.tagName, c ? " " + c : ""), o && (r.space === "svg" || a.settings.closeSelfClosing) && (i = c.charAt(c.length - 1), (!a.settings.tightSelfClosing || i === "/" || i && i !== '"' && i !== "'") && l.push(" "), l.push("/")), l.push(">")), l.push(u), !o && (!s || !vn(t, e, n)) && l.push("</" + t.tagName + ">"), l.join("");
4753
+ return a.schema = r, u && (o = !1), (c || !s || !ei(t, e, n)) && (i.push("<", t.tagName, c ? " " + c : ""), o && (r.space === "svg" || a.settings.closeSelfClosing) && (l = c.charAt(c.length - 1), (!a.settings.tightSelfClosing || l === "/" || l && l !== '"' && l !== "'") && i.push(" "), i.push("/")), i.push(">")), i.push(u), !o && (!s || !vn(t, e, n)) && i.push("</" + t.tagName + ">"), i.join("");
4748
4754
  }
4749
4755
  function ii(t, e) {
4750
4756
  const n = [];
@@ -4764,10 +4770,10 @@ function ii(t, e) {
4764
4770
  }
4765
4771
  function li(t, e, n) {
4766
4772
  const a = uo(t.schema, e), r = t.settings.allowParseErrors && t.schema.space === "html" ? 0 : 1, s = t.settings.allowDangerousCharacters ? 0 : 1;
4767
- let o = t.quote, l;
4773
+ let o = t.quote, i;
4768
4774
  if (a.overloadedBoolean && (n === a.attribute || n === "") ? n = !0 : (a.boolean || a.overloadedBoolean) && (typeof n != "string" || n === a.attribute || n === "") && (n = !!n), n == null || n === !1 || typeof n == "number" && Number.isNaN(n))
4769
4775
  return "";
4770
- const i = Ue(
4776
+ const l = Ue(
4771
4777
  a.attribute,
4772
4778
  Object.assign({}, t.settings.characterReferences, {
4773
4779
  // Always encode without parse errors in non-HTML.
@@ -4776,20 +4782,20 @@ function li(t, e, n) {
4776
4782
  );
4777
4783
  return n === !0 || (n = Array.isArray(n) ? (a.commaSeparated ? Mo : Oo)(n, {
4778
4784
  padLeft: !t.settings.tightCommaSeparatedLists
4779
- }) : String(n), t.settings.collapseEmptyAttributes && !n) ? i : (t.settings.preferUnquoted && (l = Ue(
4785
+ }) : String(n), t.settings.collapseEmptyAttributes && !n) ? l : (t.settings.preferUnquoted && (i = Ue(
4780
4786
  n,
4781
4787
  Object.assign({}, t.settings.characterReferences, {
4782
4788
  attribute: !0,
4783
4789
  subset: pt.unquoted[r][s]
4784
4790
  })
4785
- )), l !== n && (t.settings.quoteSmart && Xn(n, o) > Xn(n, t.alternative) && (o = t.alternative), l = o + Ue(
4791
+ )), i !== n && (t.settings.quoteSmart && Xn(n, o) > Xn(n, t.alternative) && (o = t.alternative), i = o + Ue(
4786
4792
  n,
4787
4793
  Object.assign({}, t.settings.characterReferences, {
4788
4794
  // Always encode without parse errors in non-HTML.
4789
4795
  subset: (o === "'" ? pt.single : pt.double)[r][s],
4790
4796
  attribute: !0
4791
4797
  })
4792
- ) + o), i + (l && "=" + l));
4798
+ ) + o), l + (i && "=" + i));
4793
4799
  }
4794
4800
  const ci = ["<", "&"];
4795
4801
  function Qa(t, e, n, a) {
@@ -4910,8 +4916,8 @@ function Nt(t, e = !1) {
4910
4916
  let a = 0;
4911
4917
  const r = [];
4912
4918
  for (let o = 0; o < n.length; o += 2) {
4913
- const l = e ? n[o] + (n[o + 1] || "") : n[o];
4914
- r.push([l, a]), a += n[o].length, a += ((s = n[o + 1]) == null ? void 0 : s.length) || 0;
4919
+ const i = e ? n[o] + (n[o + 1] || "") : n[o];
4920
+ r.push([i, a]), a += n[o].length, a += ((s = n[o + 1]) == null ? void 0 : s.length) || 0;
4915
4921
  }
4916
4922
  return r;
4917
4923
  }
@@ -4924,17 +4930,17 @@ function Ci(t) {
4924
4930
  character: e[e.length - 1].length
4925
4931
  };
4926
4932
  let s = r, o = 0;
4927
- for (const l of e) {
4928
- if (s < l.length)
4933
+ for (const i of e) {
4934
+ if (s < i.length)
4929
4935
  break;
4930
- s -= l.length, o++;
4936
+ s -= i.length, o++;
4931
4937
  }
4932
4938
  return { line: o, character: s };
4933
4939
  }
4934
4940
  function a(r, s) {
4935
4941
  let o = 0;
4936
- for (let l = 0; l < r; l++)
4937
- o += e[l].length;
4942
+ for (let i = 0; i < r; i++)
4943
+ o += e[i].length;
4938
4944
  return o += s, o;
4939
4945
  }
4940
4946
  return {
@@ -4961,7 +4967,7 @@ function xi(t, e) {
4961
4967
  function Si(t, e) {
4962
4968
  const n = Array.from(e instanceof Set ? e : new Set(e)).sort((a, r) => a - r);
4963
4969
  return n.length ? t.map((a) => a.flatMap((r) => {
4964
- const s = n.filter((o) => r.offset < o && o < r.offset + r.content.length).map((o) => o - r.offset).sort((o, l) => o - l);
4970
+ const s = n.filter((o) => r.offset < o && o < r.offset + r.content.length).map((o) => o - r.offset).sort((o, i) => o - i);
4965
4971
  return s.length ? xi(r, s) : r;
4966
4972
  })) : t;
4967
4973
  }
@@ -4970,18 +4976,18 @@ function Ei(t, e, n, a) {
4970
4976
  content: t.content,
4971
4977
  explanation: t.explanation,
4972
4978
  offset: t.offset
4973
- }, s = e.map((i) => Ct(t.variants[i])), o = new Set(s.flatMap((i) => Object.keys(i))), l = {};
4974
- return s.forEach((i, c) => {
4979
+ }, s = e.map((l) => Ct(t.variants[l])), o = new Set(s.flatMap((l) => Object.keys(l))), i = {};
4980
+ return s.forEach((l, c) => {
4975
4981
  for (const u of o) {
4976
- const p = i[u] || "inherit";
4982
+ const p = l[u] || "inherit";
4977
4983
  if (c === 0 && a)
4978
- l[u] = p;
4984
+ i[u] = p;
4979
4985
  else {
4980
4986
  const d = u === "color" ? "" : u === "background-color" ? "-bg" : `-${u}`, f = n + e[c] + (u === "color" ? "" : d);
4981
- l[f] = p;
4987
+ i[f] = p;
4982
4988
  }
4983
4989
  }
4984
- }), r.htmlStyle = l, r;
4990
+ }), r.htmlStyle = i, r;
4985
4991
  }
4986
4992
  function Ct(t) {
4987
4993
  const e = {};
@@ -5002,7 +5008,7 @@ function Pt(t, e) {
5002
5008
  function nt(t) {
5003
5009
  return tr.get(t);
5004
5010
  }
5005
- class We {
5011
+ class He {
5006
5012
  constructor(...e) {
5007
5013
  /**
5008
5014
  * Theme to Stack mapping
@@ -5030,7 +5036,7 @@ class We {
5030
5036
  * Static method to create a initial grammar state.
5031
5037
  */
5032
5038
  static initial(e, n) {
5033
- return new We(
5039
+ return new He(
5034
5040
  Object.fromEntries(wi(n).map((a) => [a, on])),
5035
5041
  e
5036
5042
  );
@@ -5067,7 +5073,7 @@ function Ai(t) {
5067
5073
  return a(t), e;
5068
5074
  }
5069
5075
  function Ii(t, e) {
5070
- if (!(t instanceof We))
5076
+ if (!(t instanceof He))
5071
5077
  throw new X("Invalid grammar state");
5072
5078
  return t.getInternalStack(e);
5073
5079
  }
@@ -5084,11 +5090,11 @@ function Ri() {
5084
5090
  offset: o
5085
5091
  };
5086
5092
  } else {
5087
- const l = r.lines[o.line];
5088
- if (l === void 0)
5093
+ const i = r.lines[o.line];
5094
+ if (i === void 0)
5089
5095
  throw new X(`Invalid decoration position ${JSON.stringify(o)}. Lines length: ${r.lines.length}`);
5090
- if (o.character < 0 || o.character > l.length)
5091
- throw new X(`Invalid decoration position ${JSON.stringify(o)}. Line ${o.line} length: ${l.length}`);
5096
+ if (o.character < 0 || o.character > i.length)
5097
+ throw new X(`Invalid decoration position ${JSON.stringify(o)}. Line ${o.line} length: ${i.length}`);
5092
5098
  return {
5093
5099
  ...o,
5094
5100
  offset: r.posToIndex(o.line, o.character)
@@ -5114,7 +5120,7 @@ function Ri() {
5114
5120
  var o;
5115
5121
  if (!((o = this.options.decorations) != null && o.length))
5116
5122
  return;
5117
- const r = e(this).decorations.flatMap((l) => [l.start.offset, l.end.offset]);
5123
+ const r = e(this).decorations.flatMap((i) => [i.start.offset, i.end.offset]);
5118
5124
  return Si(n, r);
5119
5125
  },
5120
5126
  code(n) {
@@ -5136,9 +5142,9 @@ function Ri() {
5136
5142
  throw new X(`Failed to find end index for decoration ${JSON.stringify(m.end)}`);
5137
5143
  const k = _.children.slice(b, w);
5138
5144
  if (!m.alwaysWrap && k.length === _.children.length)
5139
- l(_, m, "line");
5145
+ i(_, m, "line");
5140
5146
  else if (!m.alwaysWrap && k.length === 1 && k[0].type === "element")
5141
- l(k[0], m, "token");
5147
+ i(k[0], m, "token");
5142
5148
  else {
5143
5149
  const v = {
5144
5150
  type: "element",
@@ -5146,13 +5152,13 @@ function Ri() {
5146
5152
  properties: {},
5147
5153
  children: k
5148
5154
  };
5149
- l(v, m, "wrapper"), _.children.splice(b, k.length, v);
5155
+ i(v, m, "wrapper"), _.children.splice(b, k.length, v);
5150
5156
  }
5151
5157
  }
5152
5158
  function o(p, d) {
5153
- r[p] = l(r[p], d, "line");
5159
+ r[p] = i(r[p], d, "line");
5154
5160
  }
5155
- function l(p, d, f) {
5161
+ function i(p, d, f) {
5156
5162
  var g;
5157
5163
  const m = d.properties || {}, _ = d.transform || ((b) => b);
5158
5164
  return p.tagName = d.tagName || "span", p.properties = {
@@ -5161,7 +5167,7 @@ function Ri() {
5161
5167
  class: p.properties.class
5162
5168
  }, (g = d.properties) != null && g.class && er(p, d.properties.class), p = _(p, f) || p, p;
5163
5169
  }
5164
- const i = [], c = a.decorations.sort((p, d) => d.start.offset - p.start.offset || p.end.offset - d.end.offset);
5170
+ const l = [], c = a.decorations.sort((p, d) => d.start.offset - p.start.offset || p.end.offset - d.end.offset);
5165
5171
  for (const p of c) {
5166
5172
  const { start: d, end: f } = p;
5167
5173
  if (d.line === f.line)
@@ -5169,11 +5175,11 @@ function Ri() {
5169
5175
  else if (d.line < f.line) {
5170
5176
  s(d.line, d.character, Number.POSITIVE_INFINITY, p);
5171
5177
  for (let m = d.line + 1; m < f.line; m++)
5172
- i.unshift(() => o(m, p));
5178
+ l.unshift(() => o(m, p));
5173
5179
  s(f.line, 0, f.character, p);
5174
5180
  }
5175
5181
  }
5176
- i.forEach((p) => p());
5182
+ l.forEach((p) => p());
5177
5183
  }
5178
5184
  };
5179
5185
  }
@@ -5183,9 +5189,9 @@ function Ni(t) {
5183
5189
  if (n.start.offset > n.end.offset)
5184
5190
  throw new X(`Invalid decoration range: ${JSON.stringify(n.start)} - ${JSON.stringify(n.end)}`);
5185
5191
  for (let a = e + 1; a < t.length; a++) {
5186
- const r = t[a], s = n.start.offset <= r.start.offset && r.start.offset < n.end.offset, o = n.start.offset < r.end.offset && r.end.offset <= n.end.offset, l = r.start.offset <= n.start.offset && n.start.offset < r.end.offset, i = r.start.offset < n.end.offset && n.end.offset <= r.end.offset;
5187
- if (s || o || l || i) {
5188
- if (s && o || l && i)
5192
+ const r = t[a], s = n.start.offset <= r.start.offset && r.start.offset < n.end.offset, o = n.start.offset < r.end.offset && r.end.offset <= n.end.offset, i = r.start.offset <= n.start.offset && n.start.offset < r.end.offset, l = r.start.offset < n.end.offset && n.end.offset <= r.end.offset;
5193
+ if (s || o || i || l) {
5194
+ if (s && o || i && l)
5189
5195
  continue;
5190
5196
  throw new X(`Decorations ${JSON.stringify(n.start)} and ${JSON.stringify(r.start)} intersect.`);
5191
5197
  }
@@ -5334,17 +5340,17 @@ function Li() {
5334
5340
  const r = [];
5335
5341
  let s = 0;
5336
5342
  do {
5337
- const o = Bi(a, s), l = o.sequence ? a.substring(s, o.startPosition) : a.substring(s);
5338
- if (l.length > 0 && r.push({
5339
- value: l,
5343
+ const o = Bi(a, s), i = o.sequence ? a.substring(s, o.startPosition) : a.substring(s);
5344
+ if (i.length > 0 && r.push({
5345
+ value: i,
5340
5346
  foreground: t,
5341
5347
  background: e,
5342
5348
  decorations: new Set(n)
5343
5349
  }), o.sequence) {
5344
- const i = Ti(o.sequence);
5345
- for (const c of i)
5350
+ const l = Ti(o.sequence);
5351
+ for (const c of l)
5346
5352
  c.type === "resetAll" ? (t = null, e = null, n.clear()) : c.type === "resetForegroundColor" ? t = null : c.type === "resetBackgroundColor" ? e = null : c.type === "resetDecoration" && n.delete(c.value);
5347
- for (const c of i)
5353
+ for (const c of l)
5348
5354
  c.type === "setForegroundColor" ? t = c.value : c.type === "setBackgroundColor" ? e = c.value : c.type === "setDecoration" && n.add(c.value);
5349
5355
  }
5350
5356
  s = o.position;
@@ -5372,11 +5378,11 @@ var ji = {
5372
5378
  brightWhite: "#ffffff"
5373
5379
  };
5374
5380
  function Mi(t = ji) {
5375
- function e(l) {
5376
- return t[l];
5381
+ function e(i) {
5382
+ return t[i];
5377
5383
  }
5378
- function n(l) {
5379
- return `#${l.map((i) => Math.max(0, Math.min(i, 255)).toString(16).padStart(2, "0")).join("")}`;
5384
+ function n(i) {
5385
+ return `#${i.map((l) => Math.max(0, Math.min(l, 255)).toString(16).padStart(2, "0")).join("")}`;
5380
5386
  }
5381
5387
  let a;
5382
5388
  function r() {
@@ -5385,27 +5391,27 @@ function Mi(t = ji) {
5385
5391
  a = [];
5386
5392
  for (let c = 0; c < Ie.length; c++)
5387
5393
  a.push(e(Ie[c]));
5388
- let l = [0, 95, 135, 175, 215, 255];
5394
+ let i = [0, 95, 135, 175, 215, 255];
5389
5395
  for (let c = 0; c < 6; c++)
5390
5396
  for (let u = 0; u < 6; u++)
5391
5397
  for (let p = 0; p < 6; p++)
5392
- a.push(n([l[c], l[u], l[p]]));
5393
- let i = 8;
5394
- for (let c = 0; c < 24; c++, i += 10)
5395
- a.push(n([i, i, i]));
5398
+ a.push(n([i[c], i[u], i[p]]));
5399
+ let l = 8;
5400
+ for (let c = 0; c < 24; c++, l += 10)
5401
+ a.push(n([l, l, l]));
5396
5402
  return a;
5397
5403
  }
5398
- function s(l) {
5399
- return r()[l];
5404
+ function s(i) {
5405
+ return r()[i];
5400
5406
  }
5401
- function o(l) {
5402
- switch (l.type) {
5407
+ function o(i) {
5408
+ switch (i.type) {
5403
5409
  case "named":
5404
- return e(l.name);
5410
+ return e(i.name);
5405
5411
  case "rgb":
5406
- return n(l.rgb);
5412
+ return n(i.rgb);
5407
5413
  case "table":
5408
- return s(l.index);
5414
+ return s(i.index);
5409
5415
  }
5410
5416
  }
5411
5417
  return {
@@ -5415,23 +5421,23 @@ function Mi(t = ji) {
5415
5421
  function Oi(t, e, n) {
5416
5422
  const a = vt(t, n), r = Nt(e), s = Mi(
5417
5423
  Object.fromEntries(
5418
- Ie.map((l) => {
5419
- var i;
5424
+ Ie.map((i) => {
5425
+ var l;
5420
5426
  return [
5421
- l,
5422
- (i = t.colors) == null ? void 0 : i[`terminal.ansi${l[0].toUpperCase()}${l.substring(1)}`]
5427
+ i,
5428
+ (l = t.colors) == null ? void 0 : l[`terminal.ansi${i[0].toUpperCase()}${i.substring(1)}`]
5423
5429
  ];
5424
5430
  })
5425
5431
  )
5426
5432
  ), o = Li();
5427
5433
  return r.map(
5428
- (l) => o.parse(l[0]).map((i) => {
5434
+ (i) => o.parse(i[0]).map((l) => {
5429
5435
  let c, u;
5430
- i.decorations.has("reverse") ? (c = i.background ? s.value(i.background) : t.bg, u = i.foreground ? s.value(i.foreground) : t.fg) : (c = i.foreground ? s.value(i.foreground) : t.fg, u = i.background ? s.value(i.background) : void 0), c = Ae(c, a), u = Ae(u, a), i.decorations.has("dim") && (c = Gi(c));
5436
+ l.decorations.has("reverse") ? (c = l.background ? s.value(l.background) : t.bg, u = l.foreground ? s.value(l.foreground) : t.fg) : (c = l.foreground ? s.value(l.foreground) : t.fg, u = l.background ? s.value(l.background) : void 0), c = Ae(c, a), u = Ae(u, a), l.decorations.has("dim") && (c = Gi(c));
5431
5437
  let p = Z.None;
5432
- return i.decorations.has("bold") && (p |= Z.Bold), i.decorations.has("italic") && (p |= Z.Italic), i.decorations.has("underline") && (p |= Z.Underline), i.decorations.has("strikethrough") && (p |= Z.Strikethrough), {
5433
- content: i.value,
5434
- offset: l[1],
5438
+ return l.decorations.has("bold") && (p |= Z.Bold), l.decorations.has("italic") && (p |= Z.Italic), l.decorations.has("underline") && (p |= Z.Underline), l.decorations.has("strikethrough") && (p |= Z.Strikethrough), {
5439
+ content: l.value,
5440
+ offset: i[1],
5435
5441
  // TODO: more accurate offset? might need to fork ansi-sequence-parser
5436
5442
  color: c,
5437
5443
  bgColor: u,
@@ -5456,18 +5462,18 @@ function Sn(t, e, n = {}) {
5456
5462
  theme: r = t.getLoadedThemes()[0]
5457
5463
  } = n;
5458
5464
  if (Cn(a) || xn(r))
5459
- return Nt(e).map((i) => [{ content: i[0], offset: i[1] }]);
5465
+ return Nt(e).map((l) => [{ content: l[0], offset: l[1] }]);
5460
5466
  const { theme: s, colorMap: o } = t.setTheme(r);
5461
5467
  if (a === "ansi")
5462
5468
  return Oi(s, e, n);
5463
- const l = t.getLanguage(a);
5469
+ const i = t.getLanguage(a);
5464
5470
  if (n.grammarState) {
5465
- if (n.grammarState.lang !== l.name)
5466
- throw new X(`Grammar state language "${n.grammarState.lang}" does not match highlight language "${l.name}"`);
5471
+ if (n.grammarState.lang !== i.name)
5472
+ throw new X(`Grammar state language "${n.grammarState.lang}" does not match highlight language "${i.name}"`);
5467
5473
  if (!n.grammarState.themes.includes(s.name))
5468
5474
  throw new X(`Grammar state themes "${n.grammarState.themes}" do not contain highlight theme "${s.name}"`);
5469
5475
  }
5470
- return Di(e, l, s, o, n);
5476
+ return Di(e, i, s, o, n);
5471
5477
  }
5472
5478
  function Fi(...t) {
5473
5479
  if (t.length === 2)
@@ -5480,15 +5486,15 @@ function Fi(...t) {
5480
5486
  throw new X("Plain language does not have grammar state");
5481
5487
  if (r === "ansi")
5482
5488
  throw new X("ANSI language does not have grammar state");
5483
- const { theme: o, colorMap: l } = e.setTheme(s), i = e.getLanguage(r);
5484
- return new We(
5485
- St(n, i, o, l, a).stateStack,
5486
- i.name,
5489
+ const { theme: o, colorMap: i } = e.setTheme(s), l = e.getLanguage(r);
5490
+ return new He(
5491
+ St(n, l, o, i, a).stateStack,
5492
+ l.name,
5487
5493
  o.name
5488
5494
  );
5489
5495
  }
5490
5496
  function Di(t, e, n, a, r) {
5491
- const s = St(t, e, n, a, r), o = new We(
5497
+ const s = St(t, e, n, a, r), o = new He(
5492
5498
  St(t, e, n, a, r).stateStack,
5493
5499
  e.name,
5494
5500
  n.name
@@ -5498,8 +5504,8 @@ function Di(t, e, n, a, r) {
5498
5504
  function St(t, e, n, a, r) {
5499
5505
  const s = vt(n, r), {
5500
5506
  tokenizeMaxLineLength: o = 0,
5501
- tokenizeTimeLimit: l = 500
5502
- } = r, i = Nt(t);
5507
+ tokenizeTimeLimit: i = 500
5508
+ } = r, l = Nt(t);
5503
5509
  let c = r.grammarState ? Ii(r.grammarState, n.name) ?? on : r.grammarContextCode != null ? St(
5504
5510
  r.grammarContextCode,
5505
5511
  e,
@@ -5512,8 +5518,8 @@ function St(t, e, n, a, r) {
5512
5518
  }
5513
5519
  ).stateStack : on, u = [];
5514
5520
  const p = [];
5515
- for (let d = 0, f = i.length; d < f; d++) {
5516
- const [m, _] = i[d];
5521
+ for (let d = 0, f = l.length; d < f; d++) {
5522
+ const [m, _] = l[d];
5517
5523
  if (m === "") {
5518
5524
  u = [], p.push([]);
5519
5525
  continue;
@@ -5528,8 +5534,8 @@ function St(t, e, n, a, r) {
5528
5534
  continue;
5529
5535
  }
5530
5536
  let g, b, w;
5531
- r.includeExplanation && (g = e.tokenizeLine(m, c, l), b = g.tokens, w = 0);
5532
- const k = e.tokenizeLine2(m, c, l), v = k.tokens.length / 2;
5537
+ r.includeExplanation && (g = e.tokenizeLine(m, c, i), b = g.tokens, w = 0);
5538
+ const k = e.tokenizeLine2(m, c, i), v = k.tokens.length / 2;
5533
5539
  for (let A = 0; A < v; A++) {
5534
5540
  const O = k.tokens[2 * A], I = A + 1 < v ? k.tokens[2 * A + 2] : m.length;
5535
5541
  if (O === I)
@@ -5537,46 +5543,46 @@ function St(t, e, n, a, r) {
5537
5543
  const q = k.tokens[2 * A + 1], ce = Ae(
5538
5544
  a[ze.getForeground(q)],
5539
5545
  s
5540
- ), E = ze.getFontStyle(q), $ = {
5546
+ ), x = ze.getFontStyle(q), $ = {
5541
5547
  content: m.substring(O, I),
5542
5548
  offset: _ + O,
5543
5549
  color: ce,
5544
- fontStyle: E
5550
+ fontStyle: x
5545
5551
  };
5546
5552
  if (r.includeExplanation) {
5547
5553
  const T = [];
5548
5554
  if (r.includeExplanation !== "scopeName")
5549
- for (const H of n.settings) {
5555
+ for (const W of n.settings) {
5550
5556
  let ie;
5551
- switch (typeof H.scope) {
5557
+ switch (typeof W.scope) {
5552
5558
  case "string":
5553
- ie = H.scope.split(/,/).map((be) => be.trim());
5559
+ ie = W.scope.split(/,/).map((ye) => ye.trim());
5554
5560
  break;
5555
5561
  case "object":
5556
- ie = H.scope;
5562
+ ie = W.scope;
5557
5563
  break;
5558
5564
  default:
5559
5565
  continue;
5560
5566
  }
5561
5567
  T.push({
5562
- settings: H,
5563
- selectors: ie.map((be) => be.split(/ /))
5568
+ settings: W,
5569
+ selectors: ie.map((ye) => ye.split(/ /))
5564
5570
  });
5565
5571
  }
5566
5572
  $.explanation = [];
5567
5573
  let ue = 0;
5568
5574
  for (; O + ue < I; ) {
5569
- const H = b[w], ie = m.substring(
5570
- H.startIndex,
5571
- H.endIndex
5575
+ const W = b[w], ie = m.substring(
5576
+ W.startIndex,
5577
+ W.endIndex
5572
5578
  );
5573
5579
  ue += ie.length, $.explanation.push({
5574
5580
  content: ie,
5575
5581
  scopes: r.includeExplanation === "scopeName" ? Ui(
5576
- H.scopes
5582
+ W.scopes
5577
5583
  ) : zi(
5578
5584
  T,
5579
- H.scopes
5585
+ W.scopes
5580
5586
  )
5581
5587
  }), w += 1;
5582
5588
  }
@@ -5599,7 +5605,7 @@ function zi(t, e) {
5599
5605
  const s = e[a];
5600
5606
  n[a] = {
5601
5607
  scopeName: s,
5602
- themeMatches: Wi(t, s, e.slice(0, a))
5608
+ themeMatches: Hi(t, s, e.slice(0, a))
5603
5609
  };
5604
5610
  }
5605
5611
  return n;
@@ -5615,7 +5621,7 @@ function qi(t, e, n) {
5615
5621
  Yn(t[a], n[r]) && (a -= 1), r -= 1;
5616
5622
  return a === -1;
5617
5623
  }
5618
- function Wi(t, e, n) {
5624
+ function Hi(t, e, n) {
5619
5625
  const a = [];
5620
5626
  for (const { selectors: r, settings: s } of t)
5621
5627
  for (const o of r)
@@ -5626,20 +5632,20 @@ function Wi(t, e, n) {
5626
5632
  return a;
5627
5633
  }
5628
5634
  function ar(t, e, n) {
5629
- const a = Object.entries(n.themes).filter((i) => i[1]).map((i) => ({ color: i[0], theme: i[1] })), r = a.map((i) => {
5635
+ const a = Object.entries(n.themes).filter((l) => l[1]).map((l) => ({ color: l[0], theme: l[1] })), r = a.map((l) => {
5630
5636
  const c = Sn(t, e, {
5631
5637
  ...n,
5632
- theme: i.theme
5633
- }), u = nt(c), p = typeof i.theme == "string" ? i.theme : i.theme.name;
5638
+ theme: l.theme
5639
+ }), u = nt(c), p = typeof l.theme == "string" ? l.theme : l.theme.name;
5634
5640
  return {
5635
5641
  tokens: c,
5636
5642
  state: u,
5637
5643
  theme: p
5638
5644
  };
5639
- }), s = Hi(
5640
- ...r.map((i) => i.tokens)
5645
+ }), s = Wi(
5646
+ ...r.map((l) => l.tokens)
5641
5647
  ), o = s[0].map(
5642
- (i, c) => i.map((u, p) => {
5648
+ (l, c) => l.map((u, p) => {
5643
5649
  const d = {
5644
5650
  content: u.content,
5645
5651
  variants: {},
@@ -5655,32 +5661,32 @@ function ar(t, e, n) {
5655
5661
  d.variants[a[m].color] = w;
5656
5662
  }), d;
5657
5663
  })
5658
- ), l = r[0].state ? new We(
5659
- Object.fromEntries(r.map((i) => {
5664
+ ), i = r[0].state ? new He(
5665
+ Object.fromEntries(r.map((l) => {
5660
5666
  var c;
5661
- return [i.theme, (c = i.state) == null ? void 0 : c.getInternalStack(i.theme)];
5667
+ return [l.theme, (c = l.state) == null ? void 0 : c.getInternalStack(l.theme)];
5662
5668
  })),
5663
5669
  r[0].state.lang
5664
5670
  ) : void 0;
5665
- return l && Pt(o, l), o;
5671
+ return i && Pt(o, i), o;
5666
5672
  }
5667
- function Hi(...t) {
5673
+ function Wi(...t) {
5668
5674
  const e = t.map(() => []), n = t.length;
5669
5675
  for (let a = 0; a < t[0].length; a++) {
5670
- const r = t.map((i) => i[a]), s = e.map(() => []);
5671
- e.forEach((i, c) => i.push(s[c]));
5672
- const o = r.map(() => 0), l = r.map((i) => i[0]);
5673
- for (; l.every((i) => i); ) {
5674
- const i = Math.min(...l.map((c) => c.content.length));
5676
+ const r = t.map((l) => l[a]), s = e.map(() => []);
5677
+ e.forEach((l, c) => l.push(s[c]));
5678
+ const o = r.map(() => 0), i = r.map((l) => l[0]);
5679
+ for (; i.every((l) => l); ) {
5680
+ const l = Math.min(...i.map((c) => c.content.length));
5675
5681
  for (let c = 0; c < n; c++) {
5676
- const u = l[c];
5677
- u.content.length === i ? (s[c].push(u), o[c] += 1, l[c] = r[c][o[c]]) : (s[c].push({
5682
+ const u = i[c];
5683
+ u.content.length === l ? (s[c].push(u), o[c] += 1, i[c] = r[c][o[c]]) : (s[c].push({
5678
5684
  ...u,
5679
- content: u.content.slice(0, i)
5680
- }), l[c] = {
5685
+ content: u.content.slice(0, l)
5686
+ }), i[c] = {
5681
5687
  ...u,
5682
- content: u.content.slice(i),
5683
- offset: u.offset + i
5688
+ content: u.content.slice(l),
5689
+ offset: u.offset + l
5684
5690
  });
5685
5691
  }
5686
5692
  }
@@ -5688,7 +5694,7 @@ function Hi(...t) {
5688
5694
  return e;
5689
5695
  }
5690
5696
  function Et(t, e, n) {
5691
- let a, r, s, o, l, i;
5697
+ let a, r, s, o, i, l;
5692
5698
  if ("themes" in n) {
5693
5699
  const {
5694
5700
  defaultColor: c = "light",
@@ -5701,12 +5707,12 @@ function Et(t, e, n) {
5701
5707
  e,
5702
5708
  n
5703
5709
  );
5704
- if (i = nt(d), c && !p.find((g) => g.color === c))
5710
+ if (l = nt(d), c && !p.find((g) => g.color === c))
5705
5711
  throw new X(`\`themes\` option must contain the defaultColor key \`${c}\``);
5706
5712
  const f = p.map((g) => t.getTheme(g.theme)), m = p.map((g) => g.color);
5707
- s = d.map((g) => g.map((b) => Ei(b, m, u, c))), i && Pt(s, i);
5713
+ s = d.map((g) => g.map((b) => Ei(b, m, u, c))), l && Pt(s, l);
5708
5714
  const _ = p.map((g) => vt(g.theme, n));
5709
- r = p.map((g, b) => (b === 0 && c ? "" : `${u + g.color}:`) + (Ae(f[b].fg, _[b]) || "inherit")).join(";"), a = p.map((g, b) => (b === 0 && c ? "" : `${u + g.color}-bg:`) + (Ae(f[b].bg, _[b]) || "inherit")).join(";"), o = `shiki-themes ${f.map((g) => g.name).join(" ")}`, l = c ? void 0 : [r, a].join(";");
5715
+ r = p.map((g, b) => (b === 0 && c ? "" : `${u + g.color}:`) + (Ae(f[b].fg, _[b]) || "inherit")).join(";"), a = p.map((g, b) => (b === 0 && c ? "" : `${u + g.color}-bg:`) + (Ae(f[b].bg, _[b]) || "inherit")).join(";"), o = `shiki-themes ${f.map((g) => g.name).join(" ")}`, i = c ? void 0 : [r, a].join(";");
5710
5716
  } else if ("theme" in n) {
5711
5717
  const c = vt(n.theme, n);
5712
5718
  s = Sn(
@@ -5715,7 +5721,7 @@ function Et(t, e, n) {
5715
5721
  n
5716
5722
  );
5717
5723
  const u = t.getTheme(n.theme);
5718
- a = Ae(u.bg, c), r = Ae(u.fg, c), o = u.name, i = nt(s);
5724
+ a = Ae(u.bg, c), r = Ae(u.fg, c), o = u.name, l = nt(s);
5719
5725
  } else
5720
5726
  throw new X("Invalid options, either `theme` or `themes` must be provided");
5721
5727
  return {
@@ -5723,8 +5729,8 @@ function Et(t, e, n) {
5723
5729
  fg: r,
5724
5730
  bg: a,
5725
5731
  themeName: o,
5726
- rootStyle: l,
5727
- grammarState: i
5732
+ rootStyle: i,
5733
+ grammarState: l
5728
5734
  };
5729
5735
  }
5730
5736
  function At(t, e, n, a = {
@@ -5740,8 +5746,8 @@ function At(t, e, n, a = {
5740
5746
  let {
5741
5747
  tokens: s,
5742
5748
  fg: o,
5743
- bg: l,
5744
- themeName: i,
5749
+ bg: i,
5750
+ themeName: l,
5745
5751
  rootStyle: c,
5746
5752
  grammarState: u
5747
5753
  } = Et(t, r, n);
@@ -5763,8 +5769,8 @@ function At(t, e, n, a = {
5763
5769
  {
5764
5770
  ...n,
5765
5771
  fg: o,
5766
- bg: l,
5767
- themeName: i,
5772
+ bg: i,
5773
+ themeName: l,
5768
5774
  rootStyle: c
5769
5775
  },
5770
5776
  f,
@@ -5777,8 +5783,8 @@ function Vi(t, e, n, a = nt(t)) {
5777
5783
  type: "root",
5778
5784
  children: []
5779
5785
  }, {
5780
- structure: l = "classic",
5781
- tabindex: i = "0"
5786
+ structure: i = "classic",
5787
+ tabindex: l = "0"
5782
5788
  } = e;
5783
5789
  let c = {
5784
5790
  type: "element",
@@ -5786,8 +5792,8 @@ function Vi(t, e, n, a = nt(t)) {
5786
5792
  properties: {
5787
5793
  class: `shiki ${e.themeName || ""}`,
5788
5794
  style: e.rootStyle || `background-color:${e.bg};color:${e.fg}`,
5789
- ...i !== !1 && i != null ? {
5790
- tabindex: i.toString()
5795
+ ...l !== !1 && l != null ? {
5796
+ tabindex: l.toString()
5791
5797
  } : {},
5792
5798
  ...Object.fromEntries(
5793
5799
  Array.from(
@@ -5804,7 +5810,7 @@ function Vi(t, e, n, a = nt(t)) {
5804
5810
  };
5805
5811
  const p = [], d = {
5806
5812
  ...n,
5807
- structure: l,
5813
+ structure: i,
5808
5814
  addClassToHast: er,
5809
5815
  get source() {
5810
5816
  return n.source;
@@ -5830,7 +5836,7 @@ function Vi(t, e, n, a = nt(t)) {
5830
5836
  };
5831
5837
  if (t.forEach((b, w) => {
5832
5838
  var A, O;
5833
- w && (l === "inline" ? o.children.push({ type: "element", tagName: "br", properties: {}, children: [] }) : l === "classic" && s.push({ type: "text", value: `
5839
+ w && (i === "inline" ? o.children.push({ type: "element", tagName: "br", properties: {}, children: [] }) : i === "classic" && s.push({ type: "text", value: `
5834
5840
  ` }));
5835
5841
  let k = {
5836
5842
  type: "element",
@@ -5849,16 +5855,16 @@ function Vi(t, e, n, a = nt(t)) {
5849
5855
  };
5850
5856
  const ce = dn(I.htmlStyle || Ct(I));
5851
5857
  ce && (q.properties.style = ce);
5852
- for (const E of r)
5853
- q = ((A = E == null ? void 0 : E.span) == null ? void 0 : A.call(d, q, w + 1, v, k, I)) || q;
5854
- l === "inline" ? o.children.push(q) : l === "classic" && k.children.push(q), v += I.content.length;
5858
+ for (const x of r)
5859
+ q = ((A = x == null ? void 0 : x.span) == null ? void 0 : A.call(d, q, w + 1, v, k, I)) || q;
5860
+ i === "inline" ? o.children.push(q) : i === "classic" && k.children.push(q), v += I.content.length;
5855
5861
  }
5856
- if (l === "classic") {
5862
+ if (i === "classic") {
5857
5863
  for (const I of r)
5858
5864
  k = ((O = I == null ? void 0 : I.line) == null ? void 0 : O.call(d, k, w + 1)) || k;
5859
5865
  p.push(k), s.push(k);
5860
5866
  }
5861
- }), l === "classic") {
5867
+ }), i === "classic") {
5862
5868
  for (const b of r)
5863
5869
  u = ((m = b == null ? void 0 : b.code) == null ? void 0 : m.call(d, u)) || u;
5864
5870
  c.children.push(u);
@@ -5876,8 +5882,8 @@ function Xi(t) {
5876
5882
  const n = [];
5877
5883
  let a = "", r = 0;
5878
5884
  return e.forEach((s, o) => {
5879
- const i = !(s.fontStyle && (s.fontStyle & Z.Underline || s.fontStyle & Z.Strikethrough));
5880
- i && s.content.match(/^\s+$/) && e[o + 1] ? (r || (r = s.offset), a += s.content) : a ? (i ? n.push({
5885
+ const l = !(s.fontStyle && (s.fontStyle & Z.Underline || s.fontStyle & Z.Strikethrough));
5886
+ l && s.content.match(/^\s+$/) && e[o + 1] ? (r || (r = s.offset), a += s.content) : a ? (l ? n.push({
5881
5887
  ...s,
5882
5888
  offset: r,
5883
5889
  content: a + s.content
@@ -5901,18 +5907,18 @@ function Zi(t) {
5901
5907
  const [, r, s, o] = a;
5902
5908
  if (!r && !o)
5903
5909
  return n;
5904
- const l = [{
5910
+ const i = [{
5905
5911
  ...n,
5906
5912
  offset: n.offset + r.length,
5907
5913
  content: s
5908
5914
  }];
5909
- return r && l.unshift({
5915
+ return r && i.unshift({
5910
5916
  content: r,
5911
5917
  offset: n.offset
5912
- }), o && l.push({
5918
+ }), o && i.push({
5913
5919
  content: o,
5914
5920
  offset: n.offset + r.length + s.length
5915
- }), l;
5921
+ }), i;
5916
5922
  }));
5917
5923
  }
5918
5924
  function Ki(t) {
@@ -5923,8 +5929,8 @@ function Ki(t) {
5923
5929
  n.push({ ...a });
5924
5930
  continue;
5925
5931
  }
5926
- const r = n[n.length - 1], s = r.htmlStyle || dn(Ct(r)), o = a.htmlStyle || dn(Ct(a)), l = r.fontStyle && (r.fontStyle & Z.Underline || r.fontStyle & Z.Strikethrough), i = a.fontStyle && (a.fontStyle & Z.Underline || a.fontStyle & Z.Strikethrough);
5927
- !l && !i && s === o ? r.content += a.content : n.push({ ...a });
5932
+ const r = n[n.length - 1], s = r.htmlStyle || dn(Ct(r)), o = a.htmlStyle || dn(Ct(a)), i = r.fontStyle && (r.fontStyle & Z.Underline || r.fontStyle & Z.Strikethrough), l = a.fontStyle && (a.fontStyle & Z.Underline || a.fontStyle & Z.Strikethrough);
5933
+ !i && !l && s === o ? r.content += a.content : n.push({ ...a });
5928
5934
  }
5929
5935
  return n;
5930
5936
  });
@@ -5935,8 +5941,8 @@ function Qi(t, e, n) {
5935
5941
  const a = {
5936
5942
  meta: {},
5937
5943
  options: n,
5938
- codeToHast: (o, l) => At(t, o, l),
5939
- codeToTokens: (o, l) => Et(t, o, l)
5944
+ codeToHast: (o, i) => At(t, o, i),
5945
+ codeToTokens: (o, i) => Et(t, o, i)
5940
5946
  };
5941
5947
  let r = Ji(At(t, e, n, a));
5942
5948
  for (const o of xt(n))
@@ -5945,7 +5951,7 @@ function Qi(t, e, n) {
5945
5951
  }
5946
5952
  const ea = { light: "#333333", dark: "#bbbbbb" }, ta = { light: "#fffffe", dark: "#1e1e1e" }, na = "__shiki_resolved";
5947
5953
  function En(t) {
5948
- var l, i, c, u, p;
5954
+ var i, l, c, u, p;
5949
5955
  if (t != null && t[na])
5950
5956
  return t;
5951
5957
  const e = {
@@ -5955,7 +5961,7 @@ function En(t) {
5955
5961
  let { bg: n, fg: a } = e;
5956
5962
  if (!n || !a) {
5957
5963
  const d = e.settings ? e.settings.find((f) => !f.name && !f.scope) : void 0;
5958
- (l = d == null ? void 0 : d.settings) != null && l.foreground && (a = d.settings.foreground), (i = d == null ? void 0 : d.settings) != null && i.background && (n = d.settings.background), !a && ((c = e == null ? void 0 : e.colors) != null && c["editor.foreground"]) && (a = e.colors["editor.foreground"]), !n && ((u = e == null ? void 0 : e.colors) != null && u["editor.background"]) && (n = e.colors["editor.background"]), a || (a = e.type === "light" ? ea.light : ea.dark), n || (n = e.type === "light" ? ta.light : ta.dark), e.fg = a, e.bg = n;
5964
+ (i = d == null ? void 0 : d.settings) != null && i.foreground && (a = d.settings.foreground), (l = d == null ? void 0 : d.settings) != null && l.background && (n = d.settings.background), !a && ((c = e == null ? void 0 : e.colors) != null && c["editor.foreground"]) && (a = e.colors["editor.foreground"]), !n && ((u = e == null ? void 0 : e.colors) != null && u["editor.background"]) && (n = e.colors["editor.background"]), a || (a = e.type === "light" ? ea.light : ea.dark), n || (n = e.type === "light" ? ta.light : ta.dark), e.fg = a, e.bg = n;
5959
5965
  }
5960
5966
  e.settings[0] && e.settings[0].settings && !e.settings[0].scope || e.settings.unshift({
5961
5967
  settings: {
@@ -6069,7 +6075,7 @@ class tl extends ao {
6069
6075
  return this._resolvedGrammars.get(n);
6070
6076
  }
6071
6077
  loadLanguage(n) {
6072
- var o, l, i, c;
6078
+ var o, i, l, c;
6073
6079
  if (this.getGrammar(n.name))
6074
6080
  return;
6075
6081
  const a = new Set(
@@ -6089,7 +6095,7 @@ class tl extends ao {
6089
6095
  this._alias[u] = n.name;
6090
6096
  }), this._loadedLanguagesCache = null, a.size)
6091
6097
  for (const u of a)
6092
- this._resolvedGrammars.delete(u.name), this._loadedLanguagesCache = null, (l = (o = this._syncRegistry) == null ? void 0 : o._injectionGrammars) == null || l.delete(u.scopeName), (c = (i = this._syncRegistry) == null ? void 0 : i._grammars) == null || c.delete(u.scopeName), this.loadLanguage(this._langMap.get(u.name));
6098
+ this._resolvedGrammars.delete(u.name), this._loadedLanguagesCache = null, (i = (o = this._syncRegistry) == null ? void 0 : o._injectionGrammars) == null || i.delete(u.scopeName), (c = (l = this._syncRegistry) == null ? void 0 : l._grammars) == null || c.delete(u.scopeName), this.loadLanguage(this._langMap.get(u.name));
6093
6099
  }
6094
6100
  dispose() {
6095
6101
  super.dispose(), this._resolvedThemes.clear(), this._resolvedGrammars.clear(), this._langMap.clear(), this._langGraph.clear(), this._loadedThemesCache = null;
@@ -6099,9 +6105,9 @@ class tl extends ao {
6099
6105
  this.resolveEmbeddedLanguages(s);
6100
6106
  const a = Array.from(this._langGraph.entries()), r = a.filter(([s, o]) => !o);
6101
6107
  if (r.length) {
6102
- const s = a.filter(([o, l]) => {
6103
- var i;
6104
- return l && ((i = l.embeddedLangs) == null ? void 0 : i.some((c) => r.map(([u]) => u).includes(c)));
6108
+ const s = a.filter(([o, i]) => {
6109
+ var l;
6110
+ return i && ((l = i.embeddedLangs) == null ? void 0 : l.some((c) => r.map(([u]) => u).includes(c)));
6105
6111
  }).filter((o) => !r.includes(o));
6106
6112
  throw new Fe(`Missing languages ${r.map(([o]) => `\`${o}\``).join(", ")}, required by ${s.map(([o]) => `\`${o}\``).join(", ")}`);
6107
6113
  }
@@ -6166,14 +6172,14 @@ function al(t) {
6166
6172
  throw new Fe("`engine` option is required for synchronous mode");
6167
6173
  const n = (t.langs || []).flat(1), a = (t.themes || []).flat(1).map(En), r = new nl(t.engine, n), s = new tl(r, a, n, t.langAlias);
6168
6174
  let o;
6169
- function l(w) {
6175
+ function i(w) {
6170
6176
  g();
6171
6177
  const k = s.getGrammar(typeof w == "string" ? w : w.name);
6172
6178
  if (!k)
6173
6179
  throw new Fe(`Language \`${w}\` not found, you may need to load it first`);
6174
6180
  return k;
6175
6181
  }
6176
- function i(w) {
6182
+ function l(w) {
6177
6183
  if (w === "none")
6178
6184
  return { bg: "", fg: "", name: "none", settings: [], type: "dark" };
6179
6185
  g();
@@ -6184,7 +6190,7 @@ function al(t) {
6184
6190
  }
6185
6191
  function c(w) {
6186
6192
  g();
6187
- const k = i(w);
6193
+ const k = l(w);
6188
6194
  o !== w && (s.setTheme(k), o = w);
6189
6195
  const v = s.getColorMap();
6190
6196
  return {
@@ -6221,8 +6227,8 @@ function al(t) {
6221
6227
  }
6222
6228
  return {
6223
6229
  setTheme: c,
6224
- getTheme: i,
6225
- getLanguage: l,
6230
+ getTheme: l,
6231
+ getLanguage: i,
6226
6232
  getLoadedThemes: u,
6227
6233
  getLoadedLanguages: p,
6228
6234
  loadLanguage: f,
@@ -6269,19 +6275,19 @@ async function sl(t) {
6269
6275
  const ol = Object.freeze(JSON.parse('{"colors":{"activityBar.activeBorder":"#f9826c","activityBar.background":"#24292e","activityBar.border":"#1b1f23","activityBar.foreground":"#e1e4e8","activityBar.inactiveForeground":"#6a737d","activityBarBadge.background":"#0366d6","activityBarBadge.foreground":"#fff","badge.background":"#044289","badge.foreground":"#c8e1ff","breadcrumb.activeSelectionForeground":"#d1d5da","breadcrumb.focusForeground":"#e1e4e8","breadcrumb.foreground":"#959da5","breadcrumbPicker.background":"#2b3036","button.background":"#176f2c","button.foreground":"#dcffe4","button.hoverBackground":"#22863a","button.secondaryBackground":"#444d56","button.secondaryForeground":"#fff","button.secondaryHoverBackground":"#586069","checkbox.background":"#444d56","checkbox.border":"#1b1f23","debugToolBar.background":"#2b3036","descriptionForeground":"#959da5","diffEditor.insertedTextBackground":"#28a74530","diffEditor.removedTextBackground":"#d73a4930","dropdown.background":"#2f363d","dropdown.border":"#1b1f23","dropdown.foreground":"#e1e4e8","dropdown.listBackground":"#24292e","editor.background":"#24292e","editor.findMatchBackground":"#ffd33d44","editor.findMatchHighlightBackground":"#ffd33d22","editor.focusedStackFrameHighlightBackground":"#2b6a3033","editor.foldBackground":"#58606915","editor.foreground":"#e1e4e8","editor.inactiveSelectionBackground":"#3392FF22","editor.lineHighlightBackground":"#2b3036","editor.linkedEditingBackground":"#3392FF22","editor.selectionBackground":"#3392FF44","editor.selectionHighlightBackground":"#17E5E633","editor.selectionHighlightBorder":"#17E5E600","editor.stackFrameHighlightBackground":"#C6902625","editor.wordHighlightBackground":"#17E5E600","editor.wordHighlightBorder":"#17E5E699","editor.wordHighlightStrongBackground":"#17E5E600","editor.wordHighlightStrongBorder":"#17E5E666","editorBracketHighlight.foreground1":"#79b8ff","editorBracketHighlight.foreground2":"#ffab70","editorBracketHighlight.foreground3":"#b392f0","editorBracketHighlight.foreground4":"#79b8ff","editorBracketHighlight.foreground5":"#ffab70","editorBracketHighlight.foreground6":"#b392f0","editorBracketMatch.background":"#17E5E650","editorBracketMatch.border":"#17E5E600","editorCursor.foreground":"#c8e1ff","editorError.foreground":"#f97583","editorGroup.border":"#1b1f23","editorGroupHeader.tabsBackground":"#1f2428","editorGroupHeader.tabsBorder":"#1b1f23","editorGutter.addedBackground":"#28a745","editorGutter.deletedBackground":"#ea4a5a","editorGutter.modifiedBackground":"#2188ff","editorIndentGuide.activeBackground":"#444d56","editorIndentGuide.background":"#2f363d","editorLineNumber.activeForeground":"#e1e4e8","editorLineNumber.foreground":"#444d56","editorOverviewRuler.border":"#1b1f23","editorWarning.foreground":"#ffea7f","editorWhitespace.foreground":"#444d56","editorWidget.background":"#1f2428","errorForeground":"#f97583","focusBorder":"#005cc5","foreground":"#d1d5da","gitDecoration.addedResourceForeground":"#34d058","gitDecoration.conflictingResourceForeground":"#ffab70","gitDecoration.deletedResourceForeground":"#ea4a5a","gitDecoration.ignoredResourceForeground":"#6a737d","gitDecoration.modifiedResourceForeground":"#79b8ff","gitDecoration.submoduleResourceForeground":"#6a737d","gitDecoration.untrackedResourceForeground":"#34d058","input.background":"#2f363d","input.border":"#1b1f23","input.foreground":"#e1e4e8","input.placeholderForeground":"#959da5","list.activeSelectionBackground":"#39414a","list.activeSelectionForeground":"#e1e4e8","list.focusBackground":"#044289","list.hoverBackground":"#282e34","list.hoverForeground":"#e1e4e8","list.inactiveFocusBackground":"#1d2d3e","list.inactiveSelectionBackground":"#282e34","list.inactiveSelectionForeground":"#e1e4e8","notificationCenterHeader.background":"#24292e","notificationCenterHeader.foreground":"#959da5","notifications.background":"#2f363d","notifications.border":"#1b1f23","notifications.foreground":"#e1e4e8","notificationsErrorIcon.foreground":"#ea4a5a","notificationsInfoIcon.foreground":"#79b8ff","notificationsWarningIcon.foreground":"#ffab70","panel.background":"#1f2428","panel.border":"#1b1f23","panelInput.border":"#2f363d","panelTitle.activeBorder":"#f9826c","panelTitle.activeForeground":"#e1e4e8","panelTitle.inactiveForeground":"#959da5","peekViewEditor.background":"#1f242888","peekViewEditor.matchHighlightBackground":"#ffd33d33","peekViewResult.background":"#1f2428","peekViewResult.matchHighlightBackground":"#ffd33d33","pickerGroup.border":"#444d56","pickerGroup.foreground":"#e1e4e8","progressBar.background":"#0366d6","quickInput.background":"#24292e","quickInput.foreground":"#e1e4e8","scrollbar.shadow":"#0008","scrollbarSlider.activeBackground":"#6a737d88","scrollbarSlider.background":"#6a737d33","scrollbarSlider.hoverBackground":"#6a737d44","settings.headerForeground":"#e1e4e8","settings.modifiedItemIndicator":"#0366d6","sideBar.background":"#1f2428","sideBar.border":"#1b1f23","sideBar.foreground":"#d1d5da","sideBarSectionHeader.background":"#1f2428","sideBarSectionHeader.border":"#1b1f23","sideBarSectionHeader.foreground":"#e1e4e8","sideBarTitle.foreground":"#e1e4e8","statusBar.background":"#24292e","statusBar.border":"#1b1f23","statusBar.debuggingBackground":"#931c06","statusBar.debuggingForeground":"#fff","statusBar.foreground":"#d1d5da","statusBar.noFolderBackground":"#24292e","statusBarItem.prominentBackground":"#282e34","statusBarItem.remoteBackground":"#24292e","statusBarItem.remoteForeground":"#d1d5da","tab.activeBackground":"#24292e","tab.activeBorder":"#24292e","tab.activeBorderTop":"#f9826c","tab.activeForeground":"#e1e4e8","tab.border":"#1b1f23","tab.hoverBackground":"#24292e","tab.inactiveBackground":"#1f2428","tab.inactiveForeground":"#959da5","tab.unfocusedActiveBorder":"#24292e","tab.unfocusedActiveBorderTop":"#1b1f23","tab.unfocusedHoverBackground":"#24292e","terminal.ansiBlack":"#586069","terminal.ansiBlue":"#2188ff","terminal.ansiBrightBlack":"#959da5","terminal.ansiBrightBlue":"#79b8ff","terminal.ansiBrightCyan":"#56d4dd","terminal.ansiBrightGreen":"#85e89d","terminal.ansiBrightMagenta":"#b392f0","terminal.ansiBrightRed":"#f97583","terminal.ansiBrightWhite":"#fafbfc","terminal.ansiBrightYellow":"#ffea7f","terminal.ansiCyan":"#39c5cf","terminal.ansiGreen":"#34d058","terminal.ansiMagenta":"#b392f0","terminal.ansiRed":"#ea4a5a","terminal.ansiWhite":"#d1d5da","terminal.ansiYellow":"#ffea7f","terminal.foreground":"#d1d5da","terminal.tab.activeBorder":"#f9826c","terminalCursor.background":"#586069","terminalCursor.foreground":"#79b8ff","textBlockQuote.background":"#24292e","textBlockQuote.border":"#444d56","textCodeBlock.background":"#2f363d","textLink.activeForeground":"#c8e1ff","textLink.foreground":"#79b8ff","textPreformat.foreground":"#d1d5da","textSeparator.foreground":"#586069","titleBar.activeBackground":"#24292e","titleBar.activeForeground":"#e1e4e8","titleBar.border":"#1b1f23","titleBar.inactiveBackground":"#1f2428","titleBar.inactiveForeground":"#959da5","tree.indentGuidesStroke":"#2f363d","welcomePage.buttonBackground":"#2f363d","welcomePage.buttonHoverBackground":"#444d56"},"displayName":"GitHub Dark","name":"github-dark","semanticHighlighting":true,"tokenColors":[{"scope":["comment","punctuation.definition.comment","string.comment"],"settings":{"foreground":"#6a737d"}},{"scope":["constant","entity.name.constant","variable.other.constant","variable.other.enummember","variable.language"],"settings":{"foreground":"#79b8ff"}},{"scope":["entity","entity.name"],"settings":{"foreground":"#b392f0"}},{"scope":"variable.parameter.function","settings":{"foreground":"#e1e4e8"}},{"scope":"entity.name.tag","settings":{"foreground":"#85e89d"}},{"scope":"keyword","settings":{"foreground":"#f97583"}},{"scope":["storage","storage.type"],"settings":{"foreground":"#f97583"}},{"scope":["storage.modifier.package","storage.modifier.import","storage.type.java"],"settings":{"foreground":"#e1e4e8"}},{"scope":["string","punctuation.definition.string","string punctuation.section.embedded source"],"settings":{"foreground":"#9ecbff"}},{"scope":"support","settings":{"foreground":"#79b8ff"}},{"scope":"meta.property-name","settings":{"foreground":"#79b8ff"}},{"scope":"variable","settings":{"foreground":"#ffab70"}},{"scope":"variable.other","settings":{"foreground":"#e1e4e8"}},{"scope":"invalid.broken","settings":{"fontStyle":"italic","foreground":"#fdaeb7"}},{"scope":"invalid.deprecated","settings":{"fontStyle":"italic","foreground":"#fdaeb7"}},{"scope":"invalid.illegal","settings":{"fontStyle":"italic","foreground":"#fdaeb7"}},{"scope":"invalid.unimplemented","settings":{"fontStyle":"italic","foreground":"#fdaeb7"}},{"scope":"carriage-return","settings":{"background":"#f97583","content":"^M","fontStyle":"italic underline","foreground":"#24292e"}},{"scope":"message.error","settings":{"foreground":"#fdaeb7"}},{"scope":"string variable","settings":{"foreground":"#79b8ff"}},{"scope":["source.regexp","string.regexp"],"settings":{"foreground":"#dbedff"}},{"scope":["string.regexp.character-class","string.regexp constant.character.escape","string.regexp source.ruby.embedded","string.regexp string.regexp.arbitrary-repitition"],"settings":{"foreground":"#dbedff"}},{"scope":"string.regexp constant.character.escape","settings":{"fontStyle":"bold","foreground":"#85e89d"}},{"scope":"support.constant","settings":{"foreground":"#79b8ff"}},{"scope":"support.variable","settings":{"foreground":"#79b8ff"}},{"scope":"meta.module-reference","settings":{"foreground":"#79b8ff"}},{"scope":"punctuation.definition.list.begin.markdown","settings":{"foreground":"#ffab70"}},{"scope":["markup.heading","markup.heading entity.name"],"settings":{"fontStyle":"bold","foreground":"#79b8ff"}},{"scope":"markup.quote","settings":{"foreground":"#85e89d"}},{"scope":"markup.italic","settings":{"fontStyle":"italic","foreground":"#e1e4e8"}},{"scope":"markup.bold","settings":{"fontStyle":"bold","foreground":"#e1e4e8"}},{"scope":["markup.underline"],"settings":{"fontStyle":"underline"}},{"scope":["markup.strikethrough"],"settings":{"fontStyle":"strikethrough"}},{"scope":"markup.inline.raw","settings":{"foreground":"#79b8ff"}},{"scope":["markup.deleted","meta.diff.header.from-file","punctuation.definition.deleted"],"settings":{"background":"#86181d","foreground":"#fdaeb7"}},{"scope":["markup.inserted","meta.diff.header.to-file","punctuation.definition.inserted"],"settings":{"background":"#144620","foreground":"#85e89d"}},{"scope":["markup.changed","punctuation.definition.changed"],"settings":{"background":"#c24e00","foreground":"#ffab70"}},{"scope":["markup.ignored","markup.untracked"],"settings":{"background":"#79b8ff","foreground":"#2f363d"}},{"scope":"meta.diff.range","settings":{"fontStyle":"bold","foreground":"#b392f0"}},{"scope":"meta.diff.header","settings":{"foreground":"#79b8ff"}},{"scope":"meta.separator","settings":{"fontStyle":"bold","foreground":"#79b8ff"}},{"scope":"meta.output","settings":{"foreground":"#79b8ff"}},{"scope":["brackethighlighter.tag","brackethighlighter.curly","brackethighlighter.round","brackethighlighter.square","brackethighlighter.angle","brackethighlighter.quote"],"settings":{"foreground":"#d1d5da"}},{"scope":"brackethighlighter.unmatched","settings":{"foreground":"#fdaeb7"}},{"scope":["constant.other.reference.link","string.other.link"],"settings":{"fontStyle":"underline","foreground":"#dbedff"}}],"type":"dark"}')), il = Object.freeze(JSON.parse('{"displayName":"TypeScript","name":"typescript","patterns":[{"include":"#directives"},{"include":"#statements"},{"include":"#shebang"}],"repository":{"access-modifier":{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(abstract|declare|override|public|protected|private|readonly|static)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"storage.modifier.ts"},"after-operator-block-as-object-literal":{"begin":"(?<!\\\\+\\\\+|--)(?<=[!(+,:=>?\\\\[]|^await|[^$._[:alnum:]]await|^return|[^$._[:alnum:]]return|^yield|[^$._[:alnum:]]yield|^throw|[^$._[:alnum:]]throw|^in|[^$._[:alnum:]]in|^of|[^$._[:alnum:]]of|^typeof|[^$._[:alnum:]]typeof|&&|\\\\|\\\\||\\\\*)\\\\s*(\\\\{)","beginCaptures":{"1":{"name":"punctuation.definition.block.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"name":"meta.objectliteral.ts","patterns":[{"include":"#object-member"}]},"array-binding-pattern":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.array.ts"}},"end":"]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.ts"}},"patterns":[{"include":"#binding-element"},{"include":"#punctuation-comma"}]},"array-binding-pattern-const":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.array.ts"}},"end":"]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.ts"}},"patterns":[{"include":"#binding-element-const"},{"include":"#punctuation-comma"}]},"array-literal":{"begin":"\\\\s*(\\\\[)","beginCaptures":{"1":{"name":"meta.brace.square.ts"}},"end":"]","endCaptures":{"0":{"name":"meta.brace.square.ts"}},"name":"meta.array.literal.ts","patterns":[{"include":"#expression"},{"include":"#punctuation-comma"}]},"arrow-function":{"patterns":[{"captures":{"1":{"name":"storage.modifier.async.ts"},"2":{"name":"variable.parameter.ts"}},"match":"(?:(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))\\\\b(async)\\\\s+)?([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(?==>)","name":"meta.arrow.ts"},{"begin":"(?:(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))\\\\b(async))?((?<![]!)}])\\\\s*(?=((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>)))","beginCaptures":{"1":{"name":"storage.modifier.async.ts"}},"end":"(?==>|\\\\{|^(\\\\s*(export|function|class|interface|let|var|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|const|import|enum|namespace|module|type|abstract|declare)\\\\s+))","name":"meta.arrow.ts","patterns":[{"include":"#comment"},{"include":"#type-parameters"},{"include":"#function-parameters"},{"include":"#arrow-return-type"},{"include":"#possibly-arrow-return-type"}]},{"begin":"=>","beginCaptures":{"0":{"name":"storage.type.function.arrow.ts"}},"end":"((?<=[}\\\\S])(?<!=>)|((?!\\\\{)(?=\\\\S)))(?!/[*/])","name":"meta.arrow.ts","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#decl-block"},{"include":"#expression"}]}]},"arrow-return-type":{"begin":"(?<=\\\\))\\\\s*(:)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?==>|\\\\{|^(\\\\s*(export|function|class|interface|let|var|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|const|import|enum|namespace|module|type|abstract|declare)\\\\s+))","name":"meta.return.type.arrow.ts","patterns":[{"include":"#arrow-return-type-body"}]},"arrow-return-type-body":{"patterns":[{"begin":"(?<=:)(?=\\\\s*\\\\{)","end":"(?<=})","patterns":[{"include":"#type-object"}]},{"include":"#type-predicate-operator"},{"include":"#type"}]},"async-modifier":{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(async)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"storage.modifier.async.ts"},"binding-element":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#numeric-literal"},{"include":"#regex"},{"include":"#object-binding-pattern"},{"include":"#array-binding-pattern"},{"include":"#destructuring-variable-rest"},{"include":"#variable-initializer"}]},"binding-element-const":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#numeric-literal"},{"include":"#regex"},{"include":"#object-binding-pattern-const"},{"include":"#array-binding-pattern-const"},{"include":"#destructuring-variable-rest-const"},{"include":"#variable-initializer"}]},"boolean-literal":{"patterns":[{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))true(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.boolean.true.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))false(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.boolean.false.ts"}]},"brackets":{"patterns":[{"begin":"\\\\{","end":"}|(?=\\\\*/)","patterns":[{"include":"#brackets"}]},{"begin":"\\\\[","end":"]|(?=\\\\*/)","patterns":[{"include":"#brackets"}]}]},"cast":{"patterns":[{"captures":{"1":{"name":"meta.brace.angle.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"meta.brace.angle.ts"}},"match":"\\\\s*(<)\\\\s*(const)\\\\s*(>)","name":"cast.expr.ts"},{"begin":"(?<!\\\\+\\\\+|--)(?<=^return|[^$._[:alnum:]]return|^throw|[^$._[:alnum:]]throw|^yield|[^$._[:alnum:]]yield|^await|[^$._[:alnum:]]await|^default|[^$._[:alnum:]]default|[\\\\&(*,:=>?^|]|[^$_[:alnum:]](?:\\\\+\\\\+|--)|[^+]\\\\+|[^-]-)\\\\s*(<)(?!<?=)(?!\\\\s*$)","beginCaptures":{"1":{"name":"meta.brace.angle.ts"}},"end":"(>)","endCaptures":{"1":{"name":"meta.brace.angle.ts"}},"name":"cast.expr.ts","patterns":[{"include":"#type"}]},{"begin":"(?<=^)\\\\s*(<)(?=[$_[:alpha:]][$_[:alnum:]]*\\\\s*>)","beginCaptures":{"1":{"name":"meta.brace.angle.ts"}},"end":"(>)","endCaptures":{"1":{"name":"meta.brace.angle.ts"}},"name":"cast.expr.ts","patterns":[{"include":"#type"}]}]},"class-declaration":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(?:(abstract)\\\\s+)?\\\\b(class)\\\\b(?=\\\\s+|/[*/])","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.ts"},"4":{"name":"storage.type.class.ts"}},"end":"(?<=})","name":"meta.class.ts","patterns":[{"include":"#class-declaration-or-expression-patterns"}]},"class-declaration-or-expression-patterns":{"patterns":[{"include":"#comment"},{"include":"#class-or-interface-heritage"},{"captures":{"0":{"name":"entity.name.type.class.ts"}},"match":"[$_[:alpha:]][$_[:alnum:]]*"},{"include":"#type-parameters"},{"include":"#class-or-interface-body"}]},"class-expression":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(abstract)\\\\s+)?(class)\\\\b(?=\\\\s+|[<{]|/[*/])","beginCaptures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"storage.type.class.ts"}},"end":"(?<=})","name":"meta.class.ts","patterns":[{"include":"#class-declaration-or-expression-patterns"}]},"class-or-interface-body":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"patterns":[{"include":"#comment"},{"include":"#decorator"},{"begin":"(?<=:)\\\\s*","end":"(?=[-\\\\])+,:;}\\\\s]|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)","patterns":[{"include":"#expression"}]},{"include":"#method-declaration"},{"include":"#indexer-declaration"},{"include":"#field-declaration"},{"include":"#string"},{"include":"#type-annotation"},{"include":"#variable-initializer"},{"include":"#access-modifier"},{"include":"#property-accessor"},{"include":"#async-modifier"},{"include":"#after-operator-block-as-object-literal"},{"include":"#decl-block"},{"include":"#expression"},{"include":"#punctuation-comma"},{"include":"#punctuation-semicolon"}]},"class-or-interface-heritage":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))\\\\b(extends|implements)\\\\b(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"storage.modifier.ts"}},"end":"(?=\\\\{)","patterns":[{"include":"#comment"},{"include":"#class-or-interface-heritage"},{"include":"#type-parameters"},{"include":"#expressionWithoutIdentifiers"},{"captures":{"1":{"name":"entity.name.type.module.ts"},"2":{"name":"punctuation.accessor.ts"},"3":{"name":"punctuation.accessor.optional.ts"}},"match":"([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))(?=\\\\s*[$_[:alpha:]][$_[:alnum:]]*(\\\\s*\\\\??\\\\.\\\\s*[$_[:alpha:]][$_[:alnum:]]*)*\\\\s*)"},{"captures":{"1":{"name":"entity.other.inherited-class.ts"}},"match":"([$_[:alpha:]][$_[:alnum:]]*)"},{"include":"#expressionPunctuations"}]},"comment":{"patterns":[{"begin":"/\\\\*\\\\*(?!/)","beginCaptures":{"0":{"name":"punctuation.definition.comment.ts"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.ts"}},"name":"comment.block.documentation.ts","patterns":[{"include":"#docblock"}]},{"begin":"(/\\\\*)(?:\\\\s*((@)internal)(?=\\\\s|(\\\\*/)))?","beginCaptures":{"1":{"name":"punctuation.definition.comment.ts"},"2":{"name":"storage.type.internaldeclaration.ts"},"3":{"name":"punctuation.decorator.internaldeclaration.ts"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.ts"}},"name":"comment.block.ts"},{"begin":"(^[\\\\t ]+)?((//)(?:\\\\s*((@)internal)(?=\\\\s|$))?)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.ts"},"2":{"name":"comment.line.double-slash.ts"},"3":{"name":"punctuation.definition.comment.ts"},"4":{"name":"storage.type.internaldeclaration.ts"},"5":{"name":"punctuation.decorator.internaldeclaration.ts"}},"contentName":"comment.line.double-slash.ts","end":"(?=$)"}]},"control-statement":{"patterns":[{"include":"#switch-statement"},{"include":"#for-loop"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(catch|finally|throw|try)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.trycatch.ts"},{"captures":{"1":{"name":"keyword.control.loop.ts"},"2":{"name":"entity.name.label.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(break|continue|goto)\\\\s+([$_[:alpha:]][$_[:alnum:]]*)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(break|continue|do|goto|while)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.loop.ts"},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(return)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"0":{"name":"keyword.control.flow.ts"}},"end":"(?=[;}]|$|;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)","patterns":[{"include":"#expression"}]},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(case|default|switch)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.switch.ts"},{"include":"#if-statement"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(else|if)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.conditional.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(with)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.with.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(package)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(debugger)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.other.debugger.ts"}]},"decl-block":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"name":"meta.block.ts","patterns":[{"include":"#statements"}]},"declaration":{"patterns":[{"include":"#decorator"},{"include":"#var-expr"},{"include":"#function-declaration"},{"include":"#class-declaration"},{"include":"#interface-declaration"},{"include":"#enum-declaration"},{"include":"#namespace-declaration"},{"include":"#type-alias-declaration"},{"include":"#import-equals-declaration"},{"include":"#import-declaration"},{"include":"#export-declaration"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(declare|export)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"storage.modifier.ts"}]},"decorator":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))@","beginCaptures":{"0":{"name":"punctuation.decorator.ts"}},"end":"(?=\\\\s)","name":"meta.decorator.ts","patterns":[{"include":"#expression"}]},"destructuring-const":{"patterns":[{"begin":"(?<![:=]|^of|[^$._[:alnum:]]of|^in|[^$._[:alnum:]]in)\\\\s*(?=\\\\{)","end":"(?=$|^|[,;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))","name":"meta.object-binding-pattern-variable.ts","patterns":[{"include":"#object-binding-pattern-const"},{"include":"#type-annotation"},{"include":"#comment"}]},{"begin":"(?<![:=]|^of|[^$._[:alnum:]]of|^in|[^$._[:alnum:]]in)\\\\s*(?=\\\\[)","end":"(?=$|^|[,;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))","name":"meta.array-binding-pattern-variable.ts","patterns":[{"include":"#array-binding-pattern-const"},{"include":"#type-annotation"},{"include":"#comment"}]}]},"destructuring-parameter":{"patterns":[{"begin":"(?<![:=])\\\\s*(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\{)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.object.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.object.ts"}},"name":"meta.parameter.object-binding-pattern.ts","patterns":[{"include":"#parameter-object-binding-element"}]},{"begin":"(?<![:=])\\\\s*(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.array.ts"}},"end":"]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.ts"}},"name":"meta.paramter.array-binding-pattern.ts","patterns":[{"include":"#parameter-binding-element"},{"include":"#punctuation-comma"}]}]},"destructuring-parameter-rest":{"captures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"variable.parameter.ts"}},"match":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?([$_[:alpha:]][$_[:alnum:]]*)"},"destructuring-variable":{"patterns":[{"begin":"(?<![:=]|^of|[^$._[:alnum:]]of|^in|[^$._[:alnum:]]in)\\\\s*(?=\\\\{)","end":"(?=$|^|[,;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))","name":"meta.object-binding-pattern-variable.ts","patterns":[{"include":"#object-binding-pattern"},{"include":"#type-annotation"},{"include":"#comment"}]},{"begin":"(?<![:=]|^of|[^$._[:alnum:]]of|^in|[^$._[:alnum:]]in)\\\\s*(?=\\\\[)","end":"(?=$|^|[,;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))","name":"meta.array-binding-pattern-variable.ts","patterns":[{"include":"#array-binding-pattern"},{"include":"#type-annotation"},{"include":"#comment"}]}]},"destructuring-variable-rest":{"captures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"meta.definition.variable.ts variable.other.readwrite.ts"}},"match":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?([$_[:alpha:]][$_[:alnum:]]*)"},"destructuring-variable-rest-const":{"captures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"meta.definition.variable.ts variable.other.constant.ts"}},"match":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?([$_[:alpha:]][$_[:alnum:]]*)"},"directives":{"begin":"^(///)\\\\s*(?=<(reference|amd-dependency|amd-module)(\\\\s+(path|types|no-default-lib|lib|name|resolution-mode)\\\\s*=\\\\s*((\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)))+\\\\s*/>\\\\s*$)","beginCaptures":{"1":{"name":"punctuation.definition.comment.ts"}},"end":"(?=$)","name":"comment.line.triple-slash.directive.ts","patterns":[{"begin":"(<)(reference|amd-dependency|amd-module)","beginCaptures":{"1":{"name":"punctuation.definition.tag.directive.ts"},"2":{"name":"entity.name.tag.directive.ts"}},"end":"/>","endCaptures":{"0":{"name":"punctuation.definition.tag.directive.ts"}},"name":"meta.tag.ts","patterns":[{"match":"path|types|no-default-lib|lib|name|resolution-mode","name":"entity.other.attribute-name.directive.ts"},{"match":"=","name":"keyword.operator.assignment.ts"},{"include":"#string"}]}]},"docblock":{"patterns":[{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"constant.language.access-type.jsdoc"}},"match":"((@)a(?:ccess|pi))\\\\s+(p(?:rivate|rotected|ublic))\\\\b"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"},"4":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"5":{"name":"constant.other.email.link.underline.jsdoc"},"6":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}},"match":"((@)author)\\\\s+([^*/<>@\\\\s](?:[^*/<>@]|\\\\*[^/])*)(?:\\\\s*(<)([^>\\\\s]+)(>))?"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"},"4":{"name":"keyword.operator.control.jsdoc"},"5":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)borrows)\\\\s+((?:[^*/@\\\\s]|\\\\*[^/])+)\\\\s+(as)\\\\s+((?:[^*/@\\\\s]|\\\\*[^/])+)"},{"begin":"((@)example)\\\\s+","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=@|\\\\*/)","name":"meta.example.jsdoc","patterns":[{"match":"^\\\\s\\\\*\\\\s+"},{"begin":"\\\\G(<)caption(>)","beginCaptures":{"0":{"name":"entity.name.tag.inline.jsdoc"},"1":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"2":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}},"contentName":"constant.other.description.jsdoc","end":"(</)caption(>)|(?=\\\\*/)","endCaptures":{"0":{"name":"entity.name.tag.inline.jsdoc"},"1":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"2":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}}},{"captures":{"0":{"name":"source.embedded.ts"}},"match":"[^*@\\\\s](?:[^*]|\\\\*[^/])*"}]},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"constant.language.symbol-type.jsdoc"}},"match":"((@)kind)\\\\s+(class|constant|event|external|file|function|member|mixin|module|namespace|typedef)\\\\b"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.link.underline.jsdoc"},"4":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)see)\\\\s+(?:((?=https?://)(?:[^*\\\\s]|\\\\*[^/])+)|((?!https?://|(?:\\\\[[^]\\\\[]*])?\\\\{@(?:link|linkcode|linkplain|tutorial)\\\\b)(?:[^*/@\\\\s]|\\\\*[^/])+))"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)template)\\\\s+([$A-Z_a-z][]$.\\\\[\\\\w]*(?:\\\\s*,\\\\s*[$A-Z_a-z][]$.\\\\[\\\\w]*)*)"},{"begin":"((@)template)\\\\s+(?=\\\\{)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^]$A-\\\\[_a-{}])","patterns":[{"include":"#jsdoctype"},{"match":"([$A-Z_a-z][]$.\\\\[\\\\w]*)","name":"variable.other.jsdoc"}]},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)(?:arg|argument|const|constant|member|namespace|param|var))\\\\s+([$A-Z_a-z][]$.\\\\[\\\\w]*)"},{"begin":"((@)typedef)\\\\s+(?=\\\\{)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^]$A-\\\\[_a-{}])","patterns":[{"include":"#jsdoctype"},{"match":"(?:[^*/@\\\\s]|\\\\*[^/])+","name":"entity.name.type.instance.jsdoc"}]},{"begin":"((@)(?:arg|argument|const|constant|member|namespace|param|prop|property|var))\\\\s+(?=\\\\{)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^]$A-\\\\[_a-{}])","patterns":[{"include":"#jsdoctype"},{"match":"([$A-Z_a-z][]$.\\\\[\\\\w]*)","name":"variable.other.jsdoc"},{"captures":{"1":{"name":"punctuation.definition.optional-value.begin.bracket.square.jsdoc"},"2":{"name":"keyword.operator.assignment.jsdoc"},"3":{"name":"source.embedded.ts"},"4":{"name":"punctuation.definition.optional-value.end.bracket.square.jsdoc"},"5":{"name":"invalid.illegal.syntax.jsdoc"}},"match":"(\\\\[)\\\\s*[$\\\\w]+(?:(?:\\\\[])?\\\\.[$\\\\w]+)*(?:\\\\s*(=)\\\\s*((?>\\"(?:\\\\*(?!/)|\\\\\\\\(?!\\")|[^*\\\\\\\\])*?\\"|\'(?:\\\\*(?!/)|\\\\\\\\(?!\')|[^*\\\\\\\\])*?\'|\\\\[(?:\\\\*(?!/)|[^*])*?]|(?:\\\\*(?!/)|\\\\s(?!\\\\s*])|\\\\[.*?(?:]|(?=\\\\*/))|[^]*\\\\[\\\\s])*)*))?\\\\s*(?:(])((?:[^*\\\\s]|\\\\*[^/\\\\s])+)?|(?=\\\\*/))","name":"variable.other.jsdoc"}]},{"begin":"((@)(?:define|enum|exception|export|extends|lends|implements|modifies|namespace|private|protected|returns?|satisfies|suppress|this|throws|type|yields?))\\\\s+(?=\\\\{)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^]$A-\\\\[_a-{}])","patterns":[{"include":"#jsdoctype"}]},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)(?:alias|augments|callback|constructs|emits|event|fires|exports?|extends|external|function|func|host|lends|listens|interface|memberof!?|method|module|mixes|mixin|name|requires|see|this|typedef|uses))\\\\s+((?:[^*@{}\\\\s]|\\\\*[^/])+)"},{"begin":"((@)(?:default(?:value)?|license|version))\\\\s+(([\\"\']))","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"},"4":{"name":"punctuation.definition.string.begin.jsdoc"}},"contentName":"variable.other.jsdoc","end":"(\\\\3)|(?=$|\\\\*/)","endCaptures":{"0":{"name":"variable.other.jsdoc"},"1":{"name":"punctuation.definition.string.end.jsdoc"}}},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)(?:default(?:value)?|license|tutorial|variation|version))\\\\s+([^*\\\\s]+)"},{"captures":{"1":{"name":"punctuation.definition.block.tag.jsdoc"}},"match":"(@)(?:abstract|access|alias|api|arg|argument|async|attribute|augments|author|beta|borrows|bubbles|callback|chainable|class|classdesc|code|config|const|constant|constructor|constructs|copyright|default|defaultvalue|define|deprecated|desc|description|dict|emits|enum|event|example|exception|exports?|extends|extension(?:_?for)?|external|externs|file|fileoverview|final|fires|for|func|function|generator|global|hideconstructor|host|ignore|implements|implicitCast|inherit[Dd]oc|inner|instance|interface|internal|kind|lends|license|listens|main|member|memberof!?|method|mixes|mixins?|modifies|module|name|namespace|noalias|nocollapse|nocompile|nosideeffects|override|overview|package|param|polymer(?:Behavior)?|preserve|private|prop|property|protected|public|read[Oo]nly|record|require[ds]|returns?|see|since|static|struct|submodule|summary|suppress|template|this|throws|todo|tutorial|type|typedef|unrestricted|uses|var|variation|version|virtual|writeOnce|yields?)\\\\b","name":"storage.type.class.jsdoc"},{"include":"#inline-tags"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"match":"((@)[$_[:alpha:]][$_[:alnum:]]*)(?=\\\\s+)"}]},"enum-declaration":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?(?:\\\\b(const)\\\\s+)?\\\\b(enum)\\\\s+([$_[:alpha:]][$_[:alnum:]]*)","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.ts"},"4":{"name":"storage.type.enum.ts"},"5":{"name":"entity.name.type.enum.ts"}},"end":"(?<=})","name":"meta.enum.declaration.ts","patterns":[{"include":"#comment"},{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"patterns":[{"include":"#comment"},{"begin":"([$_[:alpha:]][$_[:alnum:]]*)","beginCaptures":{"0":{"name":"variable.other.enummember.ts"}},"end":"(?=[,}]|$)","patterns":[{"include":"#comment"},{"include":"#variable-initializer"}]},{"begin":"(?=((\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])+])))","end":"(?=[,}]|$)","patterns":[{"include":"#string"},{"include":"#array-literal"},{"include":"#comment"},{"include":"#variable-initializer"}]},{"include":"#punctuation-comma"}]}]},"export-declaration":{"patterns":[{"captures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"keyword.control.as.ts"},"3":{"name":"storage.type.namespace.ts"},"4":{"name":"entity.name.type.module.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(export)\\\\s+(as)\\\\s+(namespace)\\\\s+([$_[:alpha:]][$_[:alnum:]]*)"},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(export)(?:\\\\s+(type))?(?:\\\\s*(=)|\\\\s+(default)(?=\\\\s+))","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"keyword.control.type.ts"},"3":{"name":"keyword.operator.assignment.ts"},"4":{"name":"keyword.control.default.ts"}},"end":"(?=$|;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)","name":"meta.export.default.ts","patterns":[{"include":"#interface-declaration"},{"include":"#expression"}]},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(export)(?:\\\\s+(type))?\\\\b(?!(\\\\$)|(\\\\s*:))((?=\\\\s*[*{])|((?=\\\\s*[$_[:alpha:]][$_[:alnum:]]*([,\\\\s]))(?!\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)))","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"keyword.control.type.ts"}},"end":"(?=$|;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)","name":"meta.export.ts","patterns":[{"include":"#import-export-declaration"}]}]},"expression":{"patterns":[{"include":"#expressionWithoutIdentifiers"},{"include":"#identifiers"},{"include":"#expressionPunctuations"}]},"expression-inside-possibly-arrow-parens":{"patterns":[{"include":"#expressionWithoutIdentifiers"},{"include":"#comment"},{"include":"#string"},{"include":"#decorator"},{"include":"#destructuring-parameter"},{"captures":{"1":{"name":"storage.modifier.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|protected|private|readonly)\\\\s+(?=(override|public|protected|private|readonly)\\\\s+)"},{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"entity.name.function.ts variable.language.this.ts"},"4":{"name":"entity.name.function.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<![:=])(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([$_[:alpha:]][$_[:alnum:]]*))(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*(\\\\??)(?=\\\\s*(=\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>)))))|(:\\\\s*((<)|(\\\\(\\\\s*((\\\\))|(\\\\.\\\\.\\\\.)|([$_[:alnum:]]+\\\\s*(([,:=?])|(\\\\)\\\\s*=>)))))))|(:\\\\s*(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^(),<=>])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>))))))"},{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"variable.parameter.ts variable.language.this.ts"},"4":{"name":"variable.parameter.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<![:=])(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([$_[:alpha:]][$_[:alnum:]]*))(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*(\\\\??)(?=\\\\s*[,:]|$)"},{"include":"#type-annotation"},{"include":"#variable-initializer"},{"match":",","name":"punctuation.separator.parameter.ts"},{"include":"#identifiers"},{"include":"#expressionPunctuations"}]},"expression-operators":{"patterns":[{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(await)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.flow.ts"},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(yield)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))(?=\\\\s*/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*\\\\*)","beginCaptures":{"1":{"name":"keyword.control.flow.ts"}},"end":"\\\\*","endCaptures":{"0":{"name":"keyword.generator.asterisk.ts"}},"patterns":[{"include":"#comment"}]},{"captures":{"1":{"name":"keyword.control.flow.ts"},"2":{"name":"keyword.generator.asterisk.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(yield)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))(?:\\\\s*(\\\\*))?"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))delete(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.expression.delete.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))in(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))(?!\\\\()","name":"keyword.operator.expression.in.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))of(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))(?!\\\\()","name":"keyword.operator.expression.of.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))instanceof(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.expression.instanceof.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))new(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.new.ts"},{"include":"#typeof-operator"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))void(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.expression.void.ts"},{"captures":{"1":{"name":"keyword.control.as.ts"},"2":{"name":"storage.modifier.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(as)\\\\s+(const)(?=\\\\s*($|[]),:;}]))"},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(as)|(satisfies))\\\\s+","beginCaptures":{"1":{"name":"keyword.control.as.ts"},"2":{"name":"keyword.control.satisfies.ts"}},"end":"(?=^|[-\\\\])+,:;>?}]|\\\\|\\\\||&&|!==|$|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(as|satisfies)\\\\s+)|(\\\\s+<))","patterns":[{"include":"#type"}]},{"match":"\\\\.\\\\.\\\\.","name":"keyword.operator.spread.ts"},{"match":"(?:\\\\*|(?<!\\\\()/|[-%+])=","name":"keyword.operator.assignment.compound.ts"},{"match":"(?:[\\\\&^]|<<|>>>??|\\\\|)=","name":"keyword.operator.assignment.compound.bitwise.ts"},{"match":"<<|>>>?","name":"keyword.operator.bitwise.shift.ts"},{"match":"[!=]==?","name":"keyword.operator.comparison.ts"},{"match":"<=|>=|<>|[<>]","name":"keyword.operator.relational.ts"},{"captures":{"1":{"name":"keyword.operator.logical.ts"},"2":{"name":"keyword.operator.assignment.compound.ts"},"3":{"name":"keyword.operator.arithmetic.ts"}},"match":"(?<=[$_[:alnum:]])(!)\\\\s*(?:(/=)|(/)(?![*/]))"},{"match":"!|&&|\\\\|\\\\||\\\\?\\\\?","name":"keyword.operator.logical.ts"},{"match":"[\\\\&^|~]","name":"keyword.operator.bitwise.ts"},{"match":"=","name":"keyword.operator.assignment.ts"},{"match":"--","name":"keyword.operator.decrement.ts"},{"match":"\\\\+\\\\+","name":"keyword.operator.increment.ts"},{"match":"[-%*+/]","name":"keyword.operator.arithmetic.ts"},{"begin":"(?<=[]$)_[:alnum:]])\\\\s*(?=(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)+(?:(/=)|(/)(?![*/])))","end":"(/=)|(/)(?!\\\\*([^*]|(\\\\*[^/]))*\\\\*/)","endCaptures":{"1":{"name":"keyword.operator.assignment.compound.ts"},"2":{"name":"keyword.operator.arithmetic.ts"}},"patterns":[{"include":"#comment"}]},{"captures":{"1":{"name":"keyword.operator.assignment.compound.ts"},"2":{"name":"keyword.operator.arithmetic.ts"}},"match":"(?<=[]$)_[:alnum:]])\\\\s*(?:(/=)|(/)(?![*/]))"}]},"expressionPunctuations":{"patterns":[{"include":"#punctuation-comma"},{"include":"#punctuation-accessor"}]},"expressionWithoutIdentifiers":{"patterns":[{"include":"#string"},{"include":"#regex"},{"include":"#comment"},{"include":"#function-expression"},{"include":"#class-expression"},{"include":"#arrow-function"},{"include":"#paren-expression-possibly-arrow"},{"include":"#cast"},{"include":"#ternary-expression"},{"include":"#new-expr"},{"include":"#instanceof-expr"},{"include":"#object-literal"},{"include":"#expression-operators"},{"include":"#function-call"},{"include":"#literal"},{"include":"#support-objects"},{"include":"#paren-expression"}]},"field-declaration":{"begin":"(?<!\\\\()(?:(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(readonly)\\\\s+)?(?=\\\\s*(\\\\b((?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$))|(#?[$_[:alpha:]][$_[:alnum:]]*)|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])+]))\\\\s*(?:(?:(\\\\?)|(!))\\\\s*)?([,:;=}]|$))","beginCaptures":{"1":{"name":"storage.modifier.ts"}},"end":"(?=[,;}]|$|^((?!\\\\s*(\\\\b((?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$))|(#?[$_[:alpha:]][$_[:alnum:]]*)|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])+]))\\\\s*(?:(?:(\\\\?)|(!))\\\\s*)?([,:;=]|$))))|(?<=})","name":"meta.field.declaration.ts","patterns":[{"include":"#variable-initializer"},{"include":"#type-annotation"},{"include":"#string"},{"include":"#array-literal"},{"include":"#numeric-literal"},{"include":"#comment"},{"captures":{"1":{"name":"meta.definition.property.ts entity.name.function.ts"},"2":{"name":"keyword.operator.optional.ts"},"3":{"name":"keyword.operator.definiteassignment.ts"}},"match":"(#?[$_[:alpha:]][$_[:alnum:]]*)(?:(\\\\?)|(!))?(?=\\\\s*\\\\s*(=\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>)))))|(:\\\\s*((<)|(\\\\(\\\\s*((\\\\))|(\\\\.\\\\.\\\\.)|([$_[:alnum:]]+\\\\s*(([,:=?])|(\\\\)\\\\s*=>)))))))|(:\\\\s*(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^(),<=>])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>))))))"},{"match":"#?[$_[:alpha:]][$_[:alnum:]]*","name":"meta.definition.property.ts variable.object.property.ts"},{"match":"\\\\?","name":"keyword.operator.optional.ts"},{"match":"!","name":"keyword.operator.definiteassignment.ts"}]},"for-loop":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))for(?=((\\\\s+|(\\\\s*/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*))await)?\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)?(\\\\())","beginCaptures":{"0":{"name":"keyword.control.loop.ts"}},"end":"(?<=\\\\))","patterns":[{"include":"#comment"},{"match":"await","name":"keyword.control.loop.ts"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#var-expr"},{"include":"#expression"},{"include":"#punctuation-semicolon"}]}]},"function-body":{"patterns":[{"include":"#comment"},{"include":"#type-parameters"},{"include":"#function-parameters"},{"include":"#return-type"},{"include":"#type-function-return-type"},{"include":"#decl-block"},{"match":"\\\\*","name":"keyword.generator.asterisk.ts"}]},"function-call":{"patterns":[{"begin":"(?=(((([$_[:alpha:]][$_[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(#?[$_[:alpha:]][$_[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*#?[$_[:alpha:]][$_[:alnum:]]*))|(?<=\\\\)))\\\\s*(?:(\\\\?\\\\.\\\\s*)|(!))?((<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\\\s*)?\\\\())","end":"(?<=\\\\))(?!(((([$_[:alpha:]][$_[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(#?[$_[:alpha:]][$_[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*#?[$_[:alpha:]][$_[:alnum:]]*))|(?<=\\\\)))\\\\s*(?:(\\\\?\\\\.\\\\s*)|(!))?((<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\\\s*)?\\\\())","patterns":[{"begin":"(?=(([$_[:alpha:]][$_[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(#?[$_[:alpha:]][$_[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*#?[$_[:alpha:]][$_[:alnum:]]*))","end":"(?=\\\\s*(?:(\\\\?\\\\.\\\\s*)|(!))?((<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\\\s*)?\\\\())","name":"meta.function-call.ts","patterns":[{"include":"#function-call-target"}]},{"include":"#comment"},{"include":"#function-call-optionals"},{"include":"#type-arguments"},{"include":"#paren-expression"}]},{"begin":"(?=(((([$_[:alpha:]][$_[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(#?[$_[:alpha:]][$_[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*#?[$_[:alpha:]][$_[:alnum:]]*))|(?<=\\\\)))(<\\\\s*[(\\\\[{]\\\\s*)$)","end":"(?<=>)(?!(((([$_[:alpha:]][$_[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(#?[$_[:alpha:]][$_[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*#?[$_[:alpha:]][$_[:alnum:]]*))|(?<=\\\\)))(<\\\\s*[(\\\\[{]\\\\s*)$)","patterns":[{"begin":"(?=(([$_[:alpha:]][$_[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(#?[$_[:alpha:]][$_[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*#?[$_[:alpha:]][$_[:alnum:]]*))","end":"(?=(<\\\\s*[(\\\\[{]\\\\s*)$)","name":"meta.function-call.ts","patterns":[{"include":"#function-call-target"}]},{"include":"#comment"},{"include":"#function-call-optionals"},{"include":"#type-arguments"}]}]},"function-call-optionals":{"patterns":[{"match":"\\\\?\\\\.","name":"meta.function-call.ts punctuation.accessor.optional.ts"},{"match":"!","name":"meta.function-call.ts keyword.operator.definiteassignment.ts"}]},"function-call-target":{"patterns":[{"include":"#support-function-call-identifiers"},{"match":"(#?[$_[:alpha:]][$_[:alnum:]]*)","name":"entity.name.function.ts"}]},"function-declaration":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?(?:(async)\\\\s+)?(function)\\\\b(?:\\\\s*(\\\\*))?(?:(?:\\\\s+|(?<=\\\\*))([$_[:alpha:]][$_[:alnum:]]*))?\\\\s*","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.async.ts"},"4":{"name":"storage.type.function.ts"},"5":{"name":"keyword.generator.asterisk.ts"},"6":{"name":"meta.definition.function.ts entity.name.function.ts"}},"end":"(?=;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)|(?<=})","name":"meta.function.ts","patterns":[{"include":"#function-name"},{"include":"#function-body"}]},"function-expression":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(async)\\\\s+)?(function)\\\\b(?:\\\\s*(\\\\*))?(?:(?:\\\\s+|(?<=\\\\*))([$_[:alpha:]][$_[:alnum:]]*))?\\\\s*","beginCaptures":{"1":{"name":"storage.modifier.async.ts"},"2":{"name":"storage.type.function.ts"},"3":{"name":"keyword.generator.asterisk.ts"},"4":{"name":"meta.definition.function.ts entity.name.function.ts"}},"end":"(?=;)|(?<=})","name":"meta.function.expression.ts","patterns":[{"include":"#function-name"},{"include":"#single-line-comment-consuming-line-ending"},{"include":"#function-body"}]},"function-name":{"match":"[$_[:alpha:]][$_[:alnum:]]*","name":"meta.definition.function.ts entity.name.function.ts"},"function-parameters":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.parameters.begin.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.ts"}},"name":"meta.parameters.ts","patterns":[{"include":"#function-parameters-body"}]},"function-parameters-body":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#decorator"},{"include":"#destructuring-parameter"},{"include":"#parameter-name"},{"include":"#parameter-type-annotation"},{"include":"#variable-initializer"},{"match":",","name":"punctuation.separator.parameter.ts"}]},"identifiers":{"patterns":[{"include":"#object-identifiers"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"punctuation.accessor.optional.ts"},"3":{"name":"entity.name.function.ts"}},"match":"(?:(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))\\\\s*)?([$_[:alpha:]][$_[:alnum:]]*)(?=\\\\s*=\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>)))))"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"punctuation.accessor.optional.ts"},"3":{"name":"variable.other.constant.property.ts"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))\\\\s*(#?\\\\p{upper}[$_\\\\d[:upper:]]*)(?![$_[:alnum:]])"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"punctuation.accessor.optional.ts"},"3":{"name":"variable.other.property.ts"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))\\\\s*(#?[$_[:alpha:]][$_[:alnum:]]*)"},{"match":"(\\\\p{upper}[$_\\\\d[:upper:]]*)(?![$_[:alnum:]])","name":"variable.other.constant.ts"},{"match":"[$_[:alpha:]][$_[:alnum:]]*","name":"variable.other.readwrite.ts"}]},"if-statement":{"patterns":[{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?=\\\\bif\\\\s*(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))\\\\s*(?!\\\\{))","end":"(?=;|$|})","patterns":[{"include":"#comment"},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(if)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.control.conditional.ts"},"2":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression"}]},{"begin":"(?<=\\\\))\\\\s*/(?![*/])(?=(?:[^/\\\\[\\\\\\\\]|\\\\\\\\.|\\\\[([^]\\\\\\\\]|\\\\\\\\.)*])+/([dgimsuvy]+|(?![*/])|(?=/\\\\*))(?!\\\\s*[$0-9A-Z_a-z]))","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ts"}},"end":"(/)([dgimsuvy]*)","endCaptures":{"1":{"name":"punctuation.definition.string.end.ts"},"2":{"name":"keyword.other.ts"}},"name":"string.regexp.ts","patterns":[{"include":"#regexp"}]},{"include":"#statements"}]}]},"import-declaration":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(import)(?:\\\\s+(type)(?!\\\\s+from))?(?!\\\\s*[(:])(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"keyword.control.import.ts"},"4":{"name":"keyword.control.type.ts"}},"end":"(?<!(?:^|[^$._[:alnum:]])import)(?=;|$|^)","name":"meta.import.ts","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#comment"},{"include":"#string"},{"begin":"(?<=(?:^|[^$._[:alnum:]])import)(?!\\\\s*[\\"\'])","end":"\\\\bfrom\\\\b","endCaptures":{"0":{"name":"keyword.control.from.ts"}},"patterns":[{"include":"#import-export-declaration"}]},{"include":"#import-export-declaration"}]},"import-equals-declaration":{"patterns":[{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(import)(?:\\\\s+(type))?\\\\s+([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(=)\\\\s*(require)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"keyword.control.import.ts"},"4":{"name":"keyword.control.type.ts"},"5":{"name":"variable.other.readwrite.alias.ts"},"6":{"name":"keyword.operator.assignment.ts"},"7":{"name":"keyword.control.require.ts"},"8":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"name":"meta.import-equals.external.ts","patterns":[{"include":"#comment"},{"include":"#string"}]},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(import)(?:\\\\s+(type))?\\\\s+([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(=)\\\\s*(?!require\\\\b)","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"keyword.control.import.ts"},"4":{"name":"keyword.control.type.ts"},"5":{"name":"variable.other.readwrite.alias.ts"},"6":{"name":"keyword.operator.assignment.ts"}},"end":"(?=;|$|^)","name":"meta.import-equals.internal.ts","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#comment"},{"captures":{"1":{"name":"entity.name.type.module.ts"},"2":{"name":"punctuation.accessor.ts"},"3":{"name":"punctuation.accessor.optional.ts"}},"match":"([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))"},{"match":"([$_[:alpha:]][$_[:alnum:]]*)","name":"variable.other.readwrite.ts"}]}]},"import-export-assert-clause":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(with)|(assert))\\\\s*(\\\\{)","beginCaptures":{"1":{"name":"keyword.control.with.ts"},"2":{"name":"keyword.control.assert.ts"},"3":{"name":"punctuation.definition.block.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"patterns":[{"include":"#comment"},{"include":"#string"},{"match":"[$_[:alpha:]][$_[:alnum:]]*\\\\s*(?=(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*:)","name":"meta.object-literal.key.ts"},{"match":":","name":"punctuation.separator.key-value.ts"}]},"import-export-block":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"name":"meta.block.ts","patterns":[{"include":"#import-export-clause"}]},"import-export-clause":{"patterns":[{"include":"#comment"},{"captures":{"1":{"name":"keyword.control.type.ts"},"2":{"name":"keyword.control.default.ts"},"3":{"name":"constant.language.import-export-all.ts"},"4":{"name":"variable.other.readwrite.ts"},"5":{"name":"string.quoted.alias.ts"},"12":{"name":"keyword.control.as.ts"},"13":{"name":"keyword.control.default.ts"},"14":{"name":"variable.other.readwrite.alias.ts"},"15":{"name":"string.quoted.alias.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(type)\\\\s+)?(?:\\\\b(default)|(\\\\*)|\\\\b([$_[:alpha:]][$_[:alnum:]]*)|((\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)))\\\\s+(as)\\\\s+(?:(default(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|([$_[:alpha:]][$_[:alnum:]]*)|((\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)))"},{"include":"#punctuation-comma"},{"match":"\\\\*","name":"constant.language.import-export-all.ts"},{"match":"\\\\b(default)\\\\b","name":"keyword.control.default.ts"},{"captures":{"1":{"name":"keyword.control.type.ts"},"2":{"name":"variable.other.readwrite.alias.ts"},"3":{"name":"string.quoted.alias.ts"}},"match":"(?:\\\\b(type)\\\\s+)?(?:([$_[:alpha:]][$_[:alnum:]]*)|((\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)))"}]},"import-export-declaration":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#import-export-block"},{"match":"\\\\bfrom\\\\b","name":"keyword.control.from.ts"},{"include":"#import-export-assert-clause"},{"include":"#import-export-clause"}]},"indexer-declaration":{"begin":"(?:(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(readonly)\\\\s*)?\\\\s*(\\\\[)\\\\s*([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(?=:)","beginCaptures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"meta.brace.square.ts"},"3":{"name":"variable.parameter.ts"}},"end":"(])\\\\s*(\\\\?\\\\s*)?|$","endCaptures":{"1":{"name":"meta.brace.square.ts"},"2":{"name":"keyword.operator.optional.ts"}},"name":"meta.indexer.declaration.ts","patterns":[{"include":"#type-annotation"}]},"indexer-mapped-type-declaration":{"begin":"(?:(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))([-+])?(readonly)\\\\s*)?\\\\s*(\\\\[)\\\\s*([$_[:alpha:]][$_[:alnum:]]*)\\\\s+(in)\\\\s+","beginCaptures":{"1":{"name":"keyword.operator.type.modifier.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"meta.brace.square.ts"},"4":{"name":"entity.name.type.ts"},"5":{"name":"keyword.operator.expression.in.ts"}},"end":"(])([-+])?\\\\s*(\\\\?\\\\s*)?|$","endCaptures":{"1":{"name":"meta.brace.square.ts"},"2":{"name":"keyword.operator.type.modifier.ts"},"3":{"name":"keyword.operator.optional.ts"}},"name":"meta.indexer.mappedtype.declaration.ts","patterns":[{"captures":{"1":{"name":"keyword.control.as.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(as)\\\\s+"},{"include":"#type"}]},"inline-tags":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.bracket.square.begin.jsdoc"},"2":{"name":"punctuation.definition.bracket.square.end.jsdoc"}},"match":"(\\\\[)[^]]+(])(?=\\\\{@(?:link|linkcode|linkplain|tutorial))","name":"constant.other.description.jsdoc"},{"begin":"(\\\\{)((@)(?:link(?:code|plain)?|tutorial))\\\\s*","beginCaptures":{"1":{"name":"punctuation.definition.bracket.curly.begin.jsdoc"},"2":{"name":"storage.type.class.jsdoc"},"3":{"name":"punctuation.definition.inline.tag.jsdoc"}},"end":"}|(?=\\\\*/)","endCaptures":{"0":{"name":"punctuation.definition.bracket.curly.end.jsdoc"}},"name":"entity.name.type.instance.jsdoc","patterns":[{"captures":{"1":{"name":"variable.other.link.underline.jsdoc"},"2":{"name":"punctuation.separator.pipe.jsdoc"}},"match":"\\\\G((?=https?://)(?:[^*|}\\\\s]|\\\\*/)+)(\\\\|)?"},{"captures":{"1":{"name":"variable.other.description.jsdoc"},"2":{"name":"punctuation.separator.pipe.jsdoc"}},"match":"\\\\G((?:[^*@{|}\\\\s]|\\\\*[^/])+)(\\\\|)?"}]}]},"instanceof-expr":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(instanceof)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"keyword.operator.expression.instanceof.ts"}},"end":"(?<=\\\\))|(?=[-\\\\])+,:;>?}]|\\\\|\\\\||&&|!==|$|([!=]==?)|(([\\\\&^|~]\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s+instanceof(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))function((\\\\s+[$_[:alpha:]][$_[:alnum:]]*)|(\\\\s*\\\\())))","patterns":[{"include":"#type"}]},"interface-declaration":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(?:(abstract)\\\\s+)?\\\\b(interface)\\\\b(?=\\\\s+|/[*/])","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.ts"},"4":{"name":"storage.type.interface.ts"}},"end":"(?<=})","name":"meta.interface.ts","patterns":[{"include":"#comment"},{"include":"#class-or-interface-heritage"},{"captures":{"0":{"name":"entity.name.type.interface.ts"}},"match":"[$_[:alpha:]][$_[:alnum:]]*"},{"include":"#type-parameters"},{"include":"#class-or-interface-body"}]},"jsdoctype":{"patterns":[{"begin":"\\\\G(\\\\{)","beginCaptures":{"0":{"name":"entity.name.type.instance.jsdoc"},"1":{"name":"punctuation.definition.bracket.curly.begin.jsdoc"}},"contentName":"entity.name.type.instance.jsdoc","end":"((}))\\\\s*|(?=\\\\*/)","endCaptures":{"1":{"name":"entity.name.type.instance.jsdoc"},"2":{"name":"punctuation.definition.bracket.curly.end.jsdoc"}},"patterns":[{"include":"#brackets"}]}]},"label":{"patterns":[{"begin":"([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(:)(?=\\\\s*\\\\{)","beginCaptures":{"1":{"name":"entity.name.label.ts"},"2":{"name":"punctuation.separator.label.ts"}},"end":"(?<=})","patterns":[{"include":"#decl-block"}]},{"captures":{"1":{"name":"entity.name.label.ts"},"2":{"name":"punctuation.separator.label.ts"}},"match":"([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(:)"}]},"literal":{"patterns":[{"include":"#numeric-literal"},{"include":"#boolean-literal"},{"include":"#null-literal"},{"include":"#undefined-literal"},{"include":"#numericConstant-literal"},{"include":"#array-literal"},{"include":"#this-literal"},{"include":"#super-literal"}]},"method-declaration":{"patterns":[{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(override)\\\\s+)?(?:\\\\b(p(?:ublic|rivate|rotected))\\\\s+)?(?:\\\\b(abstract)\\\\s+)?(?:\\\\b(async)\\\\s+)?\\\\s*\\\\b(constructor)\\\\b(?!:)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.ts"},"4":{"name":"storage.modifier.async.ts"},"5":{"name":"storage.type.ts"}},"end":"(?=[,;}]|$)|(?<=})","name":"meta.method.declaration.ts","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"}]},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(override)\\\\s+)?(?:\\\\b(p(?:ublic|rivate|rotected))\\\\s+)?(?:\\\\b(abstract)\\\\s+)?(?:\\\\b(async)\\\\s+)?(?:\\\\s*\\\\b(new)\\\\b(?!:)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))|(?:(\\\\*)\\\\s*)?)(?=\\\\s*((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*))?\\\\()","beginCaptures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.ts"},"4":{"name":"storage.modifier.async.ts"},"5":{"name":"keyword.operator.new.ts"},"6":{"name":"keyword.generator.asterisk.ts"}},"end":"(?=[,;}]|$)|(?<=})","name":"meta.method.declaration.ts","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"}]},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(override)\\\\s+)?(?:\\\\b(p(?:ublic|rivate|rotected))\\\\s+)?(?:\\\\b(abstract)\\\\s+)?(?:\\\\b(async)\\\\s+)?(?:\\\\b([gs]et)\\\\s+)?(?:(\\\\*)\\\\s*)?(?=\\\\s*((\\\\b((?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$))|([$_[:alpha:]][$_[:alnum:]]*)|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])+]))\\\\s*(\\\\??))\\\\s*((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*))?\\\\()","beginCaptures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.ts"},"4":{"name":"storage.modifier.async.ts"},"5":{"name":"storage.type.property.ts"},"6":{"name":"keyword.generator.asterisk.ts"}},"end":"(?=[,;}]|$)|(?<=})","name":"meta.method.declaration.ts","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"}]}]},"method-declaration-name":{"begin":"(?=(\\\\b((?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$))|([$_[:alpha:]][$_[:alnum:]]*)|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])+]))\\\\s*(\\\\??)\\\\s*[(<])","end":"(?=[(<])","patterns":[{"include":"#string"},{"include":"#array-literal"},{"include":"#numeric-literal"},{"match":"[$_[:alpha:]][$_[:alnum:]]*","name":"meta.definition.method.ts entity.name.function.ts"},{"match":"\\\\?","name":"keyword.operator.optional.ts"}]},"namespace-declaration":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(namespace|module)\\\\s+(?=[\\"$\'_`[:alpha:]])","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.type.namespace.ts"}},"end":"(?<=})|(?=;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)","name":"meta.namespace.declaration.ts","patterns":[{"include":"#comment"},{"include":"#string"},{"match":"([$_[:alpha:]][$_[:alnum:]]*)","name":"entity.name.type.module.ts"},{"include":"#punctuation-accessor"},{"include":"#decl-block"}]},"new-expr":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(new)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"keyword.operator.new.ts"}},"end":"(?<=\\\\))|(?=[-\\\\])+,:;>?}]|\\\\|\\\\||&&|!==|$|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))new(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))function((\\\\s+[$_[:alpha:]][$_[:alnum:]]*)|(\\\\s*\\\\())))","name":"new.expr.ts","patterns":[{"include":"#expression"}]},"null-literal":{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))null(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.null.ts"},"numeric-literal":{"patterns":[{"captures":{"1":{"name":"storage.type.numeric.bigint.ts"}},"match":"\\\\b(?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$)","name":"constant.numeric.hex.ts"},{"captures":{"1":{"name":"storage.type.numeric.bigint.ts"}},"match":"\\\\b(?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$)","name":"constant.numeric.binary.ts"},{"captures":{"1":{"name":"storage.type.numeric.bigint.ts"}},"match":"\\\\b(?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$)","name":"constant.numeric.octal.ts"},{"captures":{"0":{"name":"constant.numeric.decimal.ts"},"1":{"name":"meta.delimiter.decimal.period.ts"},"2":{"name":"storage.type.numeric.bigint.ts"},"3":{"name":"meta.delimiter.decimal.period.ts"},"4":{"name":"storage.type.numeric.bigint.ts"},"5":{"name":"meta.delimiter.decimal.period.ts"},"6":{"name":"storage.type.numeric.bigint.ts"},"7":{"name":"storage.type.numeric.bigint.ts"},"8":{"name":"meta.delimiter.decimal.period.ts"},"9":{"name":"storage.type.numeric.bigint.ts"},"10":{"name":"meta.delimiter.decimal.period.ts"},"11":{"name":"storage.type.numeric.bigint.ts"},"12":{"name":"meta.delimiter.decimal.period.ts"},"13":{"name":"storage.type.numeric.bigint.ts"},"14":{"name":"storage.type.numeric.bigint.ts"}},"match":"(?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$)"}]},"numericConstant-literal":{"patterns":[{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))NaN(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.nan.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Infinity(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.infinity.ts"}]},"object-binding-element":{"patterns":[{"include":"#comment"},{"begin":"(?=(\\\\b((?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$))|([$_[:alpha:]][$_[:alnum:]]*)|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])+]))\\\\s*(:))","end":"(?=[,}])","patterns":[{"include":"#object-binding-element-propertyName"},{"include":"#binding-element"}]},{"include":"#object-binding-pattern"},{"include":"#destructuring-variable-rest"},{"include":"#variable-initializer"},{"include":"#punctuation-comma"}]},"object-binding-element-const":{"patterns":[{"include":"#comment"},{"begin":"(?=(\\\\b((?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$))|([$_[:alpha:]][$_[:alnum:]]*)|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])+]))\\\\s*(:))","end":"(?=[,}])","patterns":[{"include":"#object-binding-element-propertyName"},{"include":"#binding-element-const"}]},{"include":"#object-binding-pattern-const"},{"include":"#destructuring-variable-rest-const"},{"include":"#variable-initializer"},{"include":"#punctuation-comma"}]},"object-binding-element-propertyName":{"begin":"(?=(\\\\b((?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$))|([$_[:alpha:]][$_[:alnum:]]*)|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])+]))\\\\s*(:))","end":"(:)","endCaptures":{"0":{"name":"punctuation.destructuring.ts"}},"patterns":[{"include":"#string"},{"include":"#array-literal"},{"include":"#numeric-literal"},{"match":"([$_[:alpha:]][$_[:alnum:]]*)","name":"variable.object.property.ts"}]},"object-binding-pattern":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\{)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.object.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.object.ts"}},"patterns":[{"include":"#object-binding-element"}]},"object-binding-pattern-const":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\{)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.object.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.object.ts"}},"patterns":[{"include":"#object-binding-element-const"}]},"object-identifiers":{"patterns":[{"match":"([$_[:alpha:]][$_[:alnum:]]*)(?=\\\\s*\\\\??\\\\.\\\\s*prototype\\\\b(?!\\\\$))","name":"support.class.ts"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"punctuation.accessor.optional.ts"},"3":{"name":"variable.other.constant.object.property.ts"},"4":{"name":"variable.other.object.property.ts"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))\\\\s*(?:(#?\\\\p{upper}[$_\\\\d[:upper:]]*)|(#?[$_[:alpha:]][$_[:alnum:]]*))(?=\\\\s*\\\\??\\\\.\\\\s*#?[$_[:alpha:]][$_[:alnum:]]*)"},{"captures":{"1":{"name":"variable.other.constant.object.ts"},"2":{"name":"variable.other.object.ts"}},"match":"(?:(\\\\p{upper}[$_\\\\d[:upper:]]*)|([$_[:alpha:]][$_[:alnum:]]*))(?=\\\\s*\\\\??\\\\.\\\\s*#?[$_[:alpha:]][$_[:alnum:]]*)"}]},"object-literal":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"name":"meta.objectliteral.ts","patterns":[{"include":"#object-member"}]},"object-literal-method-declaration":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(async)\\\\s+)?(?:\\\\b([gs]et)\\\\s+)?(?:(\\\\*)\\\\s*)?(?=\\\\s*((\\\\b((?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$))|([$_[:alpha:]][$_[:alnum:]]*)|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])+]))\\\\s*(\\\\??))\\\\s*((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*))?\\\\()","beginCaptures":{"1":{"name":"storage.modifier.async.ts"},"2":{"name":"storage.type.property.ts"},"3":{"name":"keyword.generator.asterisk.ts"}},"end":"(?=[,;}])|(?<=})","name":"meta.method.declaration.ts","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(async)\\\\s+)?(?:\\\\b([gs]et)\\\\s+)?(?:(\\\\*)\\\\s*)?(?=\\\\s*((\\\\b((?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$))|([$_[:alpha:]][$_[:alnum:]]*)|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])+]))\\\\s*(\\\\??))\\\\s*((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*))?\\\\()","beginCaptures":{"1":{"name":"storage.modifier.async.ts"},"2":{"name":"storage.type.property.ts"},"3":{"name":"keyword.generator.asterisk.ts"}},"end":"(?=[(<])","patterns":[{"include":"#method-declaration-name"}]}]},"object-member":{"patterns":[{"include":"#comment"},{"include":"#object-literal-method-declaration"},{"begin":"(?=\\\\[)","end":"(?=:)|((?<=])(?=\\\\s*[(<]))","name":"meta.object.member.ts meta.object-literal.key.ts","patterns":[{"include":"#comment"},{"include":"#array-literal"}]},{"begin":"(?=[\\"\'`])","end":"(?=:)|((?<=[\\"\'`])(?=((\\\\s*[(,<}])|(\\\\s+(as|satisifies)\\\\s+))))","name":"meta.object.member.ts meta.object-literal.key.ts","patterns":[{"include":"#comment"},{"include":"#string"}]},{"begin":"(?=\\\\b((?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$)))","end":"(?=:)|(?=\\\\s*([(,<}])|(\\\\s+as|satisifies\\\\s+))","name":"meta.object.member.ts meta.object-literal.key.ts","patterns":[{"include":"#comment"},{"include":"#numeric-literal"}]},{"begin":"(?<=[]\\"\'`])(?=\\\\s*[(<])","end":"(?=[,;}])|(?<=})","name":"meta.method.declaration.ts","patterns":[{"include":"#function-body"}]},{"captures":{"0":{"name":"meta.object-literal.key.ts"},"1":{"name":"constant.numeric.decimal.ts"}},"match":"(?![$_[:alpha:]])(\\\\d+)\\\\s*(?=(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*:)","name":"meta.object.member.ts"},{"captures":{"0":{"name":"meta.object-literal.key.ts"},"1":{"name":"entity.name.function.ts"}},"match":"([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(?=(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*:(\\\\s*/\\\\*([^*]|(\\\\*[^/]))*\\\\*/)*\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>)))))","name":"meta.object.member.ts"},{"captures":{"0":{"name":"meta.object-literal.key.ts"}},"match":"[$_[:alpha:]][$_[:alnum:]]*\\\\s*(?=(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*:)","name":"meta.object.member.ts"},{"begin":"\\\\.\\\\.\\\\.","beginCaptures":{"0":{"name":"keyword.operator.spread.ts"}},"end":"(?=[,}])","name":"meta.object.member.ts","patterns":[{"include":"#expression"}]},{"captures":{"1":{"name":"variable.other.readwrite.ts"}},"match":"([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(?=[,}]|$|//|/\\\\*)","name":"meta.object.member.ts"},{"captures":{"1":{"name":"keyword.control.as.ts"},"2":{"name":"storage.modifier.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(as)\\\\s+(const)(?=\\\\s*([,}]|$))","name":"meta.object.member.ts"},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(as)|(satisfies))\\\\s+","beginCaptures":{"1":{"name":"keyword.control.as.ts"},"2":{"name":"keyword.control.satisfies.ts"}},"end":"(?=[-\\\\])+,:;>?}]|\\\\|\\\\||&&|!==|$|^|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(as|satisifies)\\\\s+))","name":"meta.object.member.ts","patterns":[{"include":"#type"}]},{"begin":"(?=[$_[:alpha:]][$_[:alnum:]]*\\\\s*=)","end":"(?=[,}]|$|//|/\\\\*)","name":"meta.object.member.ts","patterns":[{"include":"#expression"}]},{"begin":":","beginCaptures":{"0":{"name":"meta.object-literal.key.ts punctuation.separator.key-value.ts"}},"end":"(?=[,}])","name":"meta.object.member.ts","patterns":[{"begin":"(?<=:)\\\\s*(async)?(?=\\\\s*(<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"storage.modifier.async.ts"}},"end":"(?<=\\\\))","patterns":[{"include":"#type-parameters"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]}]},{"begin":"(?<=:)\\\\s*(async)?\\\\s*(\\\\()(?=\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"storage.modifier.async.ts"},"2":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]},{"begin":"(?<=:)\\\\s*(async)?\\\\s*(?=<\\\\s*$)","beginCaptures":{"1":{"name":"storage.modifier.async.ts"}},"end":"(?<=>)","patterns":[{"include":"#type-parameters"}]},{"begin":"(?<=>)\\\\s*(\\\\()(?=\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]},{"include":"#possibly-arrow-return-type"},{"include":"#expression"}]},{"include":"#punctuation-comma"},{"include":"#decl-block"}]},"parameter-array-binding-pattern":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.array.ts"}},"end":"]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.ts"}},"patterns":[{"include":"#parameter-binding-element"},{"include":"#punctuation-comma"}]},"parameter-binding-element":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#numeric-literal"},{"include":"#regex"},{"include":"#parameter-object-binding-pattern"},{"include":"#parameter-array-binding-pattern"},{"include":"#destructuring-parameter-rest"},{"include":"#variable-initializer"}]},"parameter-name":{"patterns":[{"captures":{"1":{"name":"storage.modifier.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|protected|private|readonly)\\\\s+(?=(override|public|protected|private|readonly)\\\\s+)"},{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"entity.name.function.ts variable.language.this.ts"},"4":{"name":"entity.name.function.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<![:=])(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([$_[:alpha:]][$_[:alnum:]]*))(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*(\\\\??)(?=\\\\s*(=\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>)))))|(:\\\\s*((<)|(\\\\(\\\\s*((\\\\))|(\\\\.\\\\.\\\\.)|([$_[:alnum:]]+\\\\s*(([,:=?])|(\\\\)\\\\s*=>)))))))|(:\\\\s*(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^(),<=>])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>))))))"},{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"variable.parameter.ts variable.language.this.ts"},"4":{"name":"variable.parameter.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<![:=])(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([$_[:alpha:]][$_[:alnum:]]*))(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*(\\\\??)"}]},"parameter-object-binding-element":{"patterns":[{"include":"#comment"},{"begin":"(?=(\\\\b((?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$))|([$_[:alpha:]][$_[:alnum:]]*)|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])+]))\\\\s*(:))","end":"(?=[,}])","patterns":[{"include":"#object-binding-element-propertyName"},{"include":"#parameter-binding-element"},{"include":"#paren-expression"}]},{"include":"#parameter-object-binding-pattern"},{"include":"#destructuring-parameter-rest"},{"include":"#variable-initializer"},{"include":"#punctuation-comma"}]},"parameter-object-binding-pattern":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\{)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.object.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.object.ts"}},"patterns":[{"include":"#parameter-object-binding-element"}]},"parameter-type-annotation":{"patterns":[{"begin":"(:)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?=[),])|(?==[^>])","name":"meta.type.annotation.ts","patterns":[{"include":"#type"}]}]},"paren-expression":{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression"}]},"paren-expression-possibly-arrow":{"patterns":[{"begin":"(?<=[(,=])\\\\s*(async)?(?=\\\\s*((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*))?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"storage.modifier.async.ts"}},"end":"(?<=\\\\))","patterns":[{"include":"#paren-expression-possibly-arrow-with-typeparameters"}]},{"begin":"(?<=[(,=]|=>|^return|[^$._[:alnum:]]return)\\\\s*(async)?(?=\\\\s*((((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*))?\\\\()|(<)|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)))\\\\s*$)","beginCaptures":{"1":{"name":"storage.modifier.async.ts"}},"end":"(?<=\\\\))","patterns":[{"include":"#paren-expression-possibly-arrow-with-typeparameters"}]},{"include":"#possibly-arrow-return-type"}]},"paren-expression-possibly-arrow-with-typeparameters":{"patterns":[{"include":"#type-parameters"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]}]},"possibly-arrow-return-type":{"begin":"(?<=\\\\)|^)\\\\s*(:)(?=\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*=>)","beginCaptures":{"1":{"name":"meta.arrow.ts meta.return.type.arrow.ts keyword.operator.type.annotation.ts"}},"contentName":"meta.arrow.ts meta.return.type.arrow.ts","end":"(?==>|\\\\{|^(\\\\s*(export|function|class|interface|let|var|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|const|import|enum|namespace|module|type|abstract|declare)\\\\s+))","patterns":[{"include":"#arrow-return-type-body"}]},"property-accessor":{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(accessor|get|set)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"storage.type.property.ts"},"punctuation-accessor":{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"punctuation.accessor.optional.ts"}},"match":"(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d))"},"punctuation-comma":{"match":",","name":"punctuation.separator.comma.ts"},"punctuation-semicolon":{"match":";","name":"punctuation.terminator.statement.ts"},"qstring-double":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ts"}},"end":"(\\")|([^\\\\n\\\\\\\\])$","endCaptures":{"1":{"name":"punctuation.definition.string.end.ts"},"2":{"name":"invalid.illegal.newline.ts"}},"name":"string.quoted.double.ts","patterns":[{"include":"#string-character-escape"}]},"qstring-single":{"begin":"\'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ts"}},"end":"(\')|([^\\\\n\\\\\\\\])$","endCaptures":{"1":{"name":"punctuation.definition.string.end.ts"},"2":{"name":"invalid.illegal.newline.ts"}},"name":"string.quoted.single.ts","patterns":[{"include":"#string-character-escape"}]},"regex":{"patterns":[{"begin":"(?<!\\\\+\\\\+|--|})(?<=[!(+,:=?\\\\[]|^return|[^$._[:alnum:]]return|^case|[^$._[:alnum:]]case|=>|&&|\\\\|\\\\||\\\\*/)\\\\s*(/)(?![*/])(?=(?:[^()/\\\\[\\\\\\\\]|\\\\\\\\.|\\\\[([^]\\\\\\\\]|\\\\\\\\.)+]|\\\\(([^)\\\\\\\\]|\\\\\\\\.)+\\\\))+/([dgimsuvy]+|(?![*/])|(?=/\\\\*))(?!\\\\s*[$0-9A-Z_a-z]))","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.ts"}},"end":"(/)([dgimsuvy]*)","endCaptures":{"1":{"name":"punctuation.definition.string.end.ts"},"2":{"name":"keyword.other.ts"}},"name":"string.regexp.ts","patterns":[{"include":"#regexp"}]},{"begin":"((?<![]$)_[:alnum:]]|\\\\+\\\\+|--|}|\\\\*/)|((?<=^return|[^$._[:alnum:]]return|^case|[^$._[:alnum:]]case))\\\\s*)/(?![*/])(?=(?:[^/\\\\[\\\\\\\\]|\\\\\\\\.|\\\\[([^]\\\\\\\\]|\\\\\\\\.)*])+/([dgimsuvy]+|(?![*/])|(?=/\\\\*))(?!\\\\s*[$0-9A-Z_a-z]))","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ts"}},"end":"(/)([dgimsuvy]*)","endCaptures":{"1":{"name":"punctuation.definition.string.end.ts"},"2":{"name":"keyword.other.ts"}},"name":"string.regexp.ts","patterns":[{"include":"#regexp"}]}]},"regex-character-class":{"patterns":[{"match":"\\\\\\\\[DSWdfnrstvw]|\\\\.","name":"constant.other.character-class.regexp"},{"match":"\\\\\\\\([0-7]{3}|x\\\\h{2}|u\\\\h{4})","name":"constant.character.numeric.regexp"},{"match":"\\\\\\\\c[A-Z]","name":"constant.character.control.regexp"},{"match":"\\\\\\\\.","name":"constant.character.escape.backslash.regexp"}]},"regexp":{"patterns":[{"match":"\\\\\\\\[Bb]|[$^]","name":"keyword.control.anchor.regexp"},{"captures":{"0":{"name":"keyword.other.back-reference.regexp"},"1":{"name":"variable.other.regexp"}},"match":"\\\\\\\\(?:[1-9]\\\\d*|k<([$A-Z_a-z][$\\\\w]*)>)"},{"match":"[*+?]|\\\\{(\\\\d+,\\\\d+|\\\\d+,|,\\\\d+|\\\\d+)}\\\\??","name":"keyword.operator.quantifier.regexp"},{"match":"\\\\|","name":"keyword.operator.or.regexp"},{"begin":"(\\\\()((\\\\?=)|(\\\\?!)|(\\\\?<=)|(\\\\?<!))","beginCaptures":{"1":{"name":"punctuation.definition.group.regexp"},"2":{"name":"punctuation.definition.group.assertion.regexp"},"3":{"name":"meta.assertion.look-ahead.regexp"},"4":{"name":"meta.assertion.negative-look-ahead.regexp"},"5":{"name":"meta.assertion.look-behind.regexp"},"6":{"name":"meta.assertion.negative-look-behind.regexp"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.group.regexp"}},"name":"meta.group.assertion.regexp","patterns":[{"include":"#regexp"}]},{"begin":"\\\\((?:(\\\\?:)|\\\\?<([$A-Z_a-z][$\\\\w]*)>)?","beginCaptures":{"0":{"name":"punctuation.definition.group.regexp"},"1":{"name":"punctuation.definition.group.no-capture.regexp"},"2":{"name":"variable.other.regexp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.regexp"}},"name":"meta.group.regexp","patterns":[{"include":"#regexp"}]},{"begin":"(\\\\[)(\\\\^)?","beginCaptures":{"1":{"name":"punctuation.definition.character-class.regexp"},"2":{"name":"keyword.operator.negation.regexp"}},"end":"(])","endCaptures":{"1":{"name":"punctuation.definition.character-class.regexp"}},"name":"constant.other.character-class.set.regexp","patterns":[{"captures":{"1":{"name":"constant.character.numeric.regexp"},"2":{"name":"constant.character.control.regexp"},"3":{"name":"constant.character.escape.backslash.regexp"},"4":{"name":"constant.character.numeric.regexp"},"5":{"name":"constant.character.control.regexp"},"6":{"name":"constant.character.escape.backslash.regexp"}},"match":"(?:.|(\\\\\\\\(?:[0-7]{3}|x\\\\h{2}|u\\\\h{4}))|(\\\\\\\\c[A-Z])|(\\\\\\\\.))-(?:[^]\\\\\\\\]|(\\\\\\\\(?:[0-7]{3}|x\\\\h{2}|u\\\\h{4}))|(\\\\\\\\c[A-Z])|(\\\\\\\\.))","name":"constant.other.character-class.range.regexp"},{"include":"#regex-character-class"}]},{"include":"#regex-character-class"}]},"return-type":{"patterns":[{"begin":"(?<=\\\\))\\\\s*(:)(?=\\\\s*\\\\S)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?<![\\\\&:|])(?=$|^|[,;{}]|//)","name":"meta.return.type.ts","patterns":[{"include":"#return-type-core"}]},{"begin":"(?<=\\\\))\\\\s*(:)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?<![\\\\&:|])((?=[,;{}]|//|^\\\\s*$)|((?<=\\\\S)(?=\\\\s*$)))","name":"meta.return.type.ts","patterns":[{"include":"#return-type-core"}]}]},"return-type-core":{"patterns":[{"include":"#comment"},{"begin":"(?<=[\\\\&:|])(?=\\\\s*\\\\{)","end":"(?<=})","patterns":[{"include":"#type-object"}]},{"include":"#type-predicate-operator"},{"include":"#type"}]},"shebang":{"captures":{"1":{"name":"punctuation.definition.comment.ts"}},"match":"\\\\A(#!).*(?=$)","name":"comment.line.shebang.ts"},"single-line-comment-consuming-line-ending":{"begin":"(^[\\\\t ]+)?((//)(?:\\\\s*((@)internal)(?=\\\\s|$))?)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.ts"},"2":{"name":"comment.line.double-slash.ts"},"3":{"name":"punctuation.definition.comment.ts"},"4":{"name":"storage.type.internaldeclaration.ts"},"5":{"name":"punctuation.decorator.internaldeclaration.ts"}},"contentName":"comment.line.double-slash.ts","end":"(?=^)"},"statements":{"patterns":[{"include":"#declaration"},{"include":"#control-statement"},{"include":"#after-operator-block-as-object-literal"},{"include":"#decl-block"},{"include":"#label"},{"include":"#expression"},{"include":"#punctuation-semicolon"},{"include":"#string"},{"include":"#comment"}]},"string":{"patterns":[{"include":"#qstring-single"},{"include":"#qstring-double"},{"include":"#template"}]},"string-character-escape":{"match":"\\\\\\\\(x\\\\h{2}|u\\\\h{4}|u\\\\{\\\\h+}|[012][0-7]{0,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|.|$)","name":"constant.character.escape.ts"},"super-literal":{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))super\\\\b(?!\\\\$)","name":"variable.language.super.ts"},"support-function-call-identifiers":{"patterns":[{"include":"#literal"},{"include":"#support-objects"},{"include":"#object-identifiers"},{"include":"#punctuation-accessor"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))import(?=\\\\s*\\\\(\\\\s*[\\"\'`])","name":"keyword.operator.expression.import.ts"}]},"support-objects":{"patterns":[{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(arguments)\\\\b(?!\\\\$)","name":"variable.language.arguments.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(Promise)\\\\b(?!\\\\$)","name":"support.class.promise.ts"},{"captures":{"1":{"name":"keyword.control.import.ts"},"2":{"name":"punctuation.accessor.ts"},"3":{"name":"punctuation.accessor.optional.ts"},"4":{"name":"support.variable.property.importmeta.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(import)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))\\\\s*(meta)\\\\b(?!\\\\$)"},{"captures":{"1":{"name":"keyword.operator.new.ts"},"2":{"name":"punctuation.accessor.ts"},"3":{"name":"punctuation.accessor.optional.ts"},"4":{"name":"support.variable.property.target.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(new)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))\\\\s*(target)\\\\b(?!\\\\$)"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"punctuation.accessor.optional.ts"},"3":{"name":"support.variable.property.ts"},"4":{"name":"support.constant.ts"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))\\\\s*(?:(constructor|length|prototype|__proto__)\\\\b(?!\\\\$|\\\\s*(<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\()|(EPSILON|MAX_SAFE_INTEGER|MAX_VALUE|MIN_SAFE_INTEGER|MIN_VALUE|NEGATIVE_INFINITY|POSITIVE_INFINITY)\\\\b(?!\\\\$))"},{"captures":{"1":{"name":"support.type.object.module.ts"},"2":{"name":"support.type.object.module.ts"},"3":{"name":"punctuation.accessor.ts"},"4":{"name":"punctuation.accessor.optional.ts"},"5":{"name":"support.type.object.module.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(exports)|(module)(?:(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))(exports|id|filename|loaded|parent|children))?)\\\\b(?!\\\\$)"}]},"switch-statement":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?=\\\\bswitch\\\\s*\\\\()","end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"name":"switch-statement.expr.ts","patterns":[{"include":"#comment"},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(switch)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.control.switch.ts"},"2":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"name":"switch-expression.expr.ts","patterns":[{"include":"#expression"}]},{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"(?=})","name":"switch-block.expr.ts","patterns":[{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(case|default(?=:))(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"keyword.control.switch.ts"}},"end":"(?=:)","name":"case-clause.expr.ts","patterns":[{"include":"#expression"}]},{"begin":"(:)\\\\s*(\\\\{)","beginCaptures":{"1":{"name":"case-clause.expr.ts punctuation.definition.section.case-statement.ts"},"2":{"name":"meta.block.ts punctuation.definition.block.ts"}},"contentName":"meta.block.ts","end":"}","endCaptures":{"0":{"name":"meta.block.ts punctuation.definition.block.ts"}},"patterns":[{"include":"#statements"}]},{"captures":{"0":{"name":"case-clause.expr.ts punctuation.definition.section.case-statement.ts"}},"match":"(:)"},{"include":"#statements"}]}]},"template":{"patterns":[{"include":"#template-call"},{"begin":"([$_[:alpha:]][$_[:alnum:]]*)?(`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.ts"},"2":{"name":"string.template.ts punctuation.definition.string.template.begin.ts"}},"contentName":"string.template.ts","end":"`","endCaptures":{"0":{"name":"string.template.ts punctuation.definition.string.template.end.ts"}},"patterns":[{"include":"#template-substitution-element"},{"include":"#string-character-escape"}]}]},"template-call":{"patterns":[{"begin":"(?=(([$_[:alpha:]][$_[:alnum:]]*\\\\s*\\\\??\\\\.\\\\s*)*|(\\\\??\\\\.\\\\s*)?)([$_[:alpha:]][$_[:alnum:]]*)(<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\\\s*)?`)","end":"(?=`)","patterns":[{"begin":"(?=(([$_[:alpha:]][$_[:alnum:]]*\\\\s*\\\\??\\\\.\\\\s*)*|(\\\\??\\\\.\\\\s*)?)([$_[:alpha:]][$_[:alnum:]]*))","end":"(?=(<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\\\s*)?`)","patterns":[{"include":"#support-function-call-identifiers"},{"match":"([$_[:alpha:]][$_[:alnum:]]*)","name":"entity.name.function.tagged-template.ts"}]},{"include":"#type-arguments"}]},{"begin":"([$_[:alpha:]][$_[:alnum:]]*)?\\\\s*(?=(<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\\\s*)`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.ts"}},"end":"(?=`)","patterns":[{"include":"#type-arguments"}]}]},"template-substitution-element":{"begin":"\\\\$\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.template-expression.begin.ts"}},"contentName":"meta.embedded.line.ts","end":"}","endCaptures":{"0":{"name":"punctuation.definition.template-expression.end.ts"}},"name":"meta.template.expression.ts","patterns":[{"include":"#expression"}]},"template-type":{"patterns":[{"include":"#template-call"},{"begin":"([$_[:alpha:]][$_[:alnum:]]*)?(`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.ts"},"2":{"name":"string.template.ts punctuation.definition.string.template.begin.ts"}},"contentName":"string.template.ts","end":"`","endCaptures":{"0":{"name":"string.template.ts punctuation.definition.string.template.end.ts"}},"patterns":[{"include":"#template-type-substitution-element"},{"include":"#string-character-escape"}]}]},"template-type-substitution-element":{"begin":"\\\\$\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.template-expression.begin.ts"}},"contentName":"meta.embedded.line.ts","end":"}","endCaptures":{"0":{"name":"punctuation.definition.template-expression.end.ts"}},"name":"meta.template.expression.ts","patterns":[{"include":"#type"}]},"ternary-expression":{"begin":"(?!\\\\?\\\\.\\\\s*\\\\D)(\\\\?)(?!\\\\?)","beginCaptures":{"1":{"name":"keyword.operator.ternary.ts"}},"end":"\\\\s*(:)","endCaptures":{"1":{"name":"keyword.operator.ternary.ts"}},"patterns":[{"include":"#expression"}]},"this-literal":{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))this\\\\b(?!\\\\$)","name":"variable.language.this.ts"},"type":{"patterns":[{"include":"#comment"},{"include":"#type-string"},{"include":"#numeric-literal"},{"include":"#type-primitive"},{"include":"#type-builtin-literals"},{"include":"#type-parameters"},{"include":"#type-tuple"},{"include":"#type-object"},{"include":"#type-operators"},{"include":"#type-conditional"},{"include":"#type-fn-type-parameters"},{"include":"#type-paren-or-function-parameters"},{"include":"#type-function-return-type"},{"captures":{"1":{"name":"storage.modifier.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(readonly)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*"},{"include":"#type-name"}]},"type-alias-declaration":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(type)\\\\b\\\\s+([$_[:alpha:]][$_[:alnum:]]*)\\\\s*","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.type.type.ts"},"4":{"name":"entity.name.type.alias.ts"}},"end":"(?=[;}]|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)","name":"meta.type.declaration.ts","patterns":[{"include":"#comment"},{"include":"#type-parameters"},{"begin":"(=)\\\\s*(intrinsic)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"keyword.operator.assignment.ts"},"2":{"name":"keyword.control.intrinsic.ts"}},"end":"(?=[;}]|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)","patterns":[{"include":"#type"}]},{"begin":"(=)\\\\s*","beginCaptures":{"1":{"name":"keyword.operator.assignment.ts"}},"end":"(?=[;}]|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)","patterns":[{"include":"#type"}]}]},"type-annotation":{"patterns":[{"begin":"(:)(?=\\\\s*\\\\S)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?<![\\\\&:|])(?!\\\\s*[\\\\&|]\\\\s+)((?=^|[]),;}]|//)|(?==[^>])|((?<=[]$)>_}[:alpha:]])\\\\s*(?=\\\\{)))","name":"meta.type.annotation.ts","patterns":[{"include":"#type"}]},{"begin":"(:)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?<![\\\\&:|])((?=[]),;}]|//)|(?==[^>])|(?=^\\\\s*$)|((?<=[]$)>_}[:alpha:]])\\\\s*(?=\\\\{)))","name":"meta.type.annotation.ts","patterns":[{"include":"#type"}]}]},"type-arguments":{"begin":"<","beginCaptures":{"0":{"name":"punctuation.definition.typeparameters.begin.ts"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.typeparameters.end.ts"}},"name":"meta.type.parameters.ts","patterns":[{"include":"#type-arguments-body"}]},"type-arguments-body":{"patterns":[{"captures":{"0":{"name":"keyword.operator.type.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(_)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))"},{"include":"#type"},{"include":"#punctuation-comma"}]},"type-builtin-literals":{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(this|true|false|undefined|null|object)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"support.type.builtin.ts"},"type-conditional":{"patterns":[{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(extends)\\\\s+","beginCaptures":{"1":{"name":"storage.modifier.ts"}},"end":"(?<=:)","patterns":[{"begin":"\\\\?","beginCaptures":{"0":{"name":"keyword.operator.ternary.ts"}},"end":":","endCaptures":{"0":{"name":"keyword.operator.ternary.ts"}},"patterns":[{"include":"#type"}]},{"include":"#type"}]}]},"type-fn-type-parameters":{"patterns":[{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(abstract)\\\\s+)?(new)\\\\b(?=\\\\s*<)","beginCaptures":{"1":{"name":"meta.type.constructor.ts storage.modifier.ts"},"2":{"name":"meta.type.constructor.ts keyword.control.new.ts"}},"end":"(?<=>)","patterns":[{"include":"#comment"},{"include":"#type-parameters"}]},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(abstract)\\\\s+)?(new)\\\\b\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.control.new.ts"}},"end":"(?<=\\\\))","name":"meta.type.constructor.ts","patterns":[{"include":"#function-parameters"}]},{"begin":"((?=\\\\(\\\\s*((\\\\))|(\\\\.\\\\.\\\\.)|([$_[:alnum:]]+\\\\s*(([,:=?])|(\\\\)\\\\s*=>))))))","end":"(?<=\\\\))","name":"meta.type.function.ts","patterns":[{"include":"#function-parameters"}]}]},"type-function-return-type":{"patterns":[{"begin":"(=>)(?=\\\\s*\\\\S)","beginCaptures":{"1":{"name":"storage.type.function.arrow.ts"}},"end":"(?<!=>)(?<![\\\\&|])(?=[]),:;=>?{}]|//|$)","name":"meta.type.function.return.ts","patterns":[{"include":"#type-function-return-type-core"}]},{"begin":"=>","beginCaptures":{"0":{"name":"storage.type.function.arrow.ts"}},"end":"(?<!=>)(?<![\\\\&|])((?=[]),:;=>?{}]|//|^\\\\s*$)|((?<=\\\\S)(?=\\\\s*$)))","name":"meta.type.function.return.ts","patterns":[{"include":"#type-function-return-type-core"}]}]},"type-function-return-type-core":{"patterns":[{"include":"#comment"},{"begin":"(?<==>)(?=\\\\s*\\\\{)","end":"(?<=})","patterns":[{"include":"#type-object"}]},{"include":"#type-predicate-operator"},{"include":"#type"}]},"type-infer":{"patterns":[{"captures":{"1":{"name":"keyword.operator.expression.infer.ts"},"2":{"name":"entity.name.type.ts"},"3":{"name":"keyword.operator.expression.extends.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(infer)\\\\s+([$_[:alpha:]][$_[:alnum:]]*)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))(?:\\\\s+(extends)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))?","name":"meta.type.infer.ts"}]},"type-name":{"patterns":[{"begin":"([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))\\\\s*(<)","captures":{"1":{"name":"entity.name.type.module.ts"},"2":{"name":"punctuation.accessor.ts"},"3":{"name":"punctuation.accessor.optional.ts"},"4":{"name":"meta.type.parameters.ts punctuation.definition.typeparameters.begin.ts"}},"contentName":"meta.type.parameters.ts","end":"(>)","endCaptures":{"1":{"name":"meta.type.parameters.ts punctuation.definition.typeparameters.end.ts"}},"patterns":[{"include":"#type-arguments-body"}]},{"begin":"([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(<)","beginCaptures":{"1":{"name":"entity.name.type.ts"},"2":{"name":"meta.type.parameters.ts punctuation.definition.typeparameters.begin.ts"}},"contentName":"meta.type.parameters.ts","end":"(>)","endCaptures":{"1":{"name":"meta.type.parameters.ts punctuation.definition.typeparameters.end.ts"}},"patterns":[{"include":"#type-arguments-body"}]},{"captures":{"1":{"name":"entity.name.type.module.ts"},"2":{"name":"punctuation.accessor.ts"},"3":{"name":"punctuation.accessor.optional.ts"}},"match":"([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))"},{"match":"[$_[:alpha:]][$_[:alnum:]]*","name":"entity.name.type.ts"}]},"type-object":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"name":"meta.object.type.ts","patterns":[{"include":"#comment"},{"include":"#method-declaration"},{"include":"#indexer-declaration"},{"include":"#indexer-mapped-type-declaration"},{"include":"#field-declaration"},{"include":"#type-annotation"},{"begin":"\\\\.\\\\.\\\\.","beginCaptures":{"0":{"name":"keyword.operator.spread.ts"}},"end":"(?=[,;}]|$)|(?<=})","patterns":[{"include":"#type"}]},{"include":"#punctuation-comma"},{"include":"#punctuation-semicolon"},{"include":"#type"}]},"type-operators":{"patterns":[{"include":"#typeof-operator"},{"include":"#type-infer"},{"begin":"([\\\\&|])(?=\\\\s*\\\\{)","beginCaptures":{"0":{"name":"keyword.operator.type.ts"}},"end":"(?<=})","patterns":[{"include":"#type-object"}]},{"begin":"[\\\\&|]","beginCaptures":{"0":{"name":"keyword.operator.type.ts"}},"end":"(?=\\\\S)"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))keyof(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.expression.keyof.ts"},{"match":"([:?])","name":"keyword.operator.ternary.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))import(?=\\\\s*\\\\()","name":"keyword.operator.expression.import.ts"}]},"type-parameters":{"begin":"(<)","beginCaptures":{"1":{"name":"punctuation.definition.typeparameters.begin.ts"}},"end":"(>)","endCaptures":{"1":{"name":"punctuation.definition.typeparameters.end.ts"}},"name":"meta.type.parameters.ts","patterns":[{"include":"#comment"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(extends|in|out|const)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"storage.modifier.ts"},{"include":"#type"},{"include":"#punctuation-comma"},{"match":"(=)(?!>)","name":"keyword.operator.assignment.ts"}]},"type-paren-or-function-parameters":{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"name":"meta.type.paren.cover.ts","patterns":[{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"entity.name.function.ts variable.language.this.ts"},"4":{"name":"entity.name.function.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<![:=])(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([$_[:alpha:]][$_[:alnum:]]*))\\\\s*(\\\\??)(?=\\\\s*(:\\\\s*((<)|(\\\\(\\\\s*((\\\\))|(\\\\.\\\\.\\\\.)|([$_[:alnum:]]+\\\\s*(([,:=?])|(\\\\)\\\\s*=>)))))))|(:\\\\s*(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))))"},{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"variable.parameter.ts variable.language.this.ts"},"4":{"name":"variable.parameter.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<![:=])(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([$_[:alpha:]][$_[:alnum:]]*))\\\\s*(\\\\??)(?=:)"},{"include":"#type-annotation"},{"match":",","name":"punctuation.separator.parameter.ts"},{"include":"#type"}]},"type-predicate-operator":{"patterns":[{"captures":{"1":{"name":"keyword.operator.type.asserts.ts"},"2":{"name":"variable.parameter.ts variable.language.this.ts"},"3":{"name":"variable.parameter.ts"},"4":{"name":"keyword.operator.expression.is.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(asserts)\\\\s+)?(?!asserts)(?:(this)|([$_[:alpha:]][$_[:alnum:]]*))\\\\s(is)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))"},{"captures":{"1":{"name":"keyword.operator.type.asserts.ts"},"2":{"name":"variable.parameter.ts variable.language.this.ts"},"3":{"name":"variable.parameter.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(asserts)\\\\s+(?!is)(?:(this)|([$_[:alpha:]][$_[:alnum:]]*))(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))asserts(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.type.asserts.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))is(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.expression.is.ts"}]},"type-primitive":{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(string|number|bigint|boolean|symbol|any|void|never|unknown)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"support.type.primitive.ts"},"type-string":{"patterns":[{"include":"#qstring-single"},{"include":"#qstring-double"},{"include":"#template-type"}]},"type-tuple":{"begin":"\\\\[","beginCaptures":{"0":{"name":"meta.brace.square.ts"}},"end":"]","endCaptures":{"0":{"name":"meta.brace.square.ts"}},"name":"meta.type.tuple.ts","patterns":[{"match":"\\\\.\\\\.\\\\.","name":"keyword.operator.rest.ts"},{"captures":{"1":{"name":"entity.name.label.ts"},"2":{"name":"keyword.operator.optional.ts"},"3":{"name":"punctuation.separator.label.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(\\\\?)?\\\\s*(:)"},{"include":"#type"},{"include":"#punctuation-comma"}]},"typeof-operator":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))typeof(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"0":{"name":"keyword.operator.expression.typeof.ts"}},"end":"(?=[]\\\\&),:;=>?{|}]|(extends\\\\s+)|$|;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)","patterns":[{"include":"#type-arguments"},{"include":"#expression"}]},"undefined-literal":{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))undefined(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.undefined.ts"},"var-expr":{"patterns":[{"begin":"(?=(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(var|let)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))","end":"(?!(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(var|let)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))((?=^|[;}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)|((?<!^let|[^$._[:alnum:]]let|^var|[^$._[:alnum:]]var)(?=\\\\s*$)))","name":"meta.var.expr.ts","patterns":[{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(var|let)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.type.ts"}},"end":"(?=\\\\S)"},{"include":"#destructuring-variable"},{"include":"#var-single-variable"},{"include":"#variable-initializer"},{"include":"#comment"},{"begin":"(,)\\\\s*(?=$|//)","beginCaptures":{"1":{"name":"punctuation.separator.comma.ts"}},"end":"(?<!,)(((?=[;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|^\\\\s*$))|((?<=\\\\S)(?=\\\\s*$)))","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#comment"},{"include":"#destructuring-variable"},{"include":"#var-single-variable"},{"include":"#punctuation-comma"}]},{"include":"#punctuation-comma"}]},{"begin":"(?=(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(const(?!\\\\s+enum\\\\b))(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.type.ts"}},"end":"(?!(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(const(?!\\\\s+enum\\\\b))(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))((?=^|[;}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)|((?<!(?:^|[^$._[:alnum:]])const)(?=\\\\s*$)))","name":"meta.var.expr.ts","patterns":[{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(const(?!\\\\s+enum\\\\b))(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.type.ts"}},"end":"(?=\\\\S)"},{"include":"#destructuring-const"},{"include":"#var-single-const"},{"include":"#variable-initializer"},{"include":"#comment"},{"begin":"(,)\\\\s*(?=$|//)","beginCaptures":{"1":{"name":"punctuation.separator.comma.ts"}},"end":"(?<!,)(((?=[;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|^\\\\s*$))|((?<=\\\\S)(?=\\\\s*$)))","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#comment"},{"include":"#destructuring-const"},{"include":"#var-single-const"},{"include":"#punctuation-comma"}]},{"include":"#punctuation-comma"}]},{"begin":"(?=(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b\\\\b(using(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])|await\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b)\\\\b(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.type.ts"}},"end":"(?!(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b\\\\b(using(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])|await\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b)\\\\b(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))((?=[;}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)|((?<!(?:^|[^$._[:alnum:]]|^await\\\\s+|[^$._[:alnum:]]await\\\\s+)using)(?=\\\\s*$)))","name":"meta.var.expr.ts","patterns":[{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b\\\\b(using(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])|await\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b)\\\\b(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.type.ts"}},"end":"(?=\\\\S)"},{"include":"#var-single-const"},{"include":"#variable-initializer"},{"include":"#comment"},{"begin":"(,)\\\\s*((?!\\\\S)|(?=//))","beginCaptures":{"1":{"name":"punctuation.separator.comma.ts"}},"end":"(?<!,)(((?=[;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|^\\\\s*$))|((?<=\\\\S)(?=\\\\s*$)))","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#comment"},{"include":"#var-single-const"},{"include":"#punctuation-comma"}]},{"include":"#punctuation-comma"}]}]},"var-single-const":{"patterns":[{"begin":"([$_[:alpha:]][$_[:alnum:]]*)(?=\\\\s*(=\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>)))))|(:\\\\s*((<)|(\\\\(\\\\s*((\\\\))|(\\\\.\\\\.\\\\.)|([$_[:alnum:]]+\\\\s*(([,:=?])|(\\\\)\\\\s*=>)))))))|(:\\\\s*(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^(),<=>])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>))))))","beginCaptures":{"1":{"name":"meta.definition.variable.ts variable.other.constant.ts entity.name.function.ts"}},"end":"(?=$|^|[,;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|(;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b))","name":"meta.var-single-variable.expr.ts","patterns":[{"include":"#var-single-variable-type-annotation"}]},{"begin":"([$_[:alpha:]][$_[:alnum:]]*)","beginCaptures":{"1":{"name":"meta.definition.variable.ts variable.other.constant.ts"}},"end":"(?=$|^|[,;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|(;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b))","name":"meta.var-single-variable.expr.ts","patterns":[{"include":"#var-single-variable-type-annotation"}]}]},"var-single-variable":{"patterns":[{"begin":"([$_[:alpha:]][$_[:alnum:]]*)(!)?(?=\\\\s*(=\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>)))))|(:\\\\s*((<)|(\\\\(\\\\s*((\\\\))|(\\\\.\\\\.\\\\.)|([$_[:alnum:]]+\\\\s*(([,:=?])|(\\\\)\\\\s*=>)))))))|(:\\\\s*(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^(),<=>])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>))))))","beginCaptures":{"1":{"name":"meta.definition.variable.ts entity.name.function.ts"},"2":{"name":"keyword.operator.definiteassignment.ts"}},"end":"(?=$|^|[,;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|(;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b))","name":"meta.var-single-variable.expr.ts","patterns":[{"include":"#var-single-variable-type-annotation"}]},{"begin":"(\\\\p{upper}[$_\\\\d[:upper:]]*)(?![$_[:alnum:]])(!)?","beginCaptures":{"1":{"name":"meta.definition.variable.ts variable.other.constant.ts"},"2":{"name":"keyword.operator.definiteassignment.ts"}},"end":"(?=$|^|[,;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|(;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b))","name":"meta.var-single-variable.expr.ts","patterns":[{"include":"#var-single-variable-type-annotation"}]},{"begin":"([$_[:alpha:]][$_[:alnum:]]*)(!)?","beginCaptures":{"1":{"name":"meta.definition.variable.ts variable.other.readwrite.ts"},"2":{"name":"keyword.operator.definiteassignment.ts"}},"end":"(?=$|^|[,;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|(;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b))","name":"meta.var-single-variable.expr.ts","patterns":[{"include":"#var-single-variable-type-annotation"}]}]},"var-single-variable-type-annotation":{"patterns":[{"include":"#type-annotation"},{"include":"#string"},{"include":"#comment"}]},"variable-initializer":{"patterns":[{"begin":"(?<![!=])(=)(?!=)(?=\\\\s*\\\\S)(?!\\\\s*.*=>\\\\s*$)","beginCaptures":{"1":{"name":"keyword.operator.assignment.ts"}},"end":"(?=$|^|[]),;}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))","patterns":[{"include":"#expression"}]},{"begin":"(?<![!=])(=)(?!=)","beginCaptures":{"1":{"name":"keyword.operator.assignment.ts"}},"end":"(?=[]),;}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))|(?=^\\\\s*$)|(?<![-\\\\&*+/|])(?<=\\\\S)(?<!=)(?=\\\\s*$)","patterns":[{"include":"#expression"}]}]}},"scopeName":"source.ts","aliases":["ts"]}')), ll = [
6270
6276
  il
6271
6277
  ];
6272
- function He(t) {
6278
+ function We(t) {
6273
6279
  if ([...t].length !== 1) throw new Error(`Expected "${t}" to be a single code point`);
6274
6280
  return t.codePointAt(0);
6275
6281
  }
6276
6282
  function cl(t, e, n) {
6277
6283
  return t.has(e) || t.set(e, n), t.get(e);
6278
6284
  }
6279
- const An = /* @__PURE__ */ new Set(["alnum", "alpha", "ascii", "blank", "cntrl", "digit", "graph", "lower", "print", "punct", "space", "upper", "word", "xdigit"]), W = String.raw;
6285
+ const An = /* @__PURE__ */ new Set(["alnum", "alpha", "ascii", "blank", "cntrl", "digit", "graph", "lower", "print", "punct", "space", "upper", "word", "xdigit"]), H = String.raw;
6280
6286
  function Ve(t, e) {
6281
6287
  if (t == null) throw new Error(e ?? "Value expected");
6282
6288
  return t;
6283
6289
  }
6284
- const or = W`\[\^?`, ir = `c.? | C(?:-.?)?|${W`[pP]\{(?:\^?[-\x20_]*[A-Za-z][-\x20\w]*\})?`}|${W`x[89A-Fa-f]\p{AHex}(?:\\x[89A-Fa-f]\p{AHex})*`}|${W`u(?:\p{AHex}{4})? | x\{[^\}]*\}? | x\p{AHex}{0,2}`}|${W`o\{[^\}]*\}?`}|${W`\d{1,3}`}`, In = /[?*+][?+]?|\{(?:\d+(?:,\d*)?|,\d+)\}\??/, dt = new RegExp(W`
6290
+ const or = H`\[\^?`, ir = `c.? | C(?:-.?)?|${H`[pP]\{(?:\^?[-\x20_]*[A-Za-z][-\x20\w]*\})?`}|${H`x[89A-Fa-f]\p{AHex}(?:\\x[89A-Fa-f]\p{AHex})*`}|${H`u(?:\p{AHex}{4})? | x\{[^\}]*\}? | x\p{AHex}{0,2}`}|${H`o\{[^\}]*\}?`}|${H`\d{1,3}`}`, In = /[?*+][?+]?|\{(?:\d+(?:,\d*)?|,\d+)\}\??/, dt = new RegExp(H`
6285
6291
  \\ (?:
6286
6292
  ${ir}
6287
6293
  | [gk]<[^>]*>?
@@ -6303,7 +6309,7 @@ const or = W`\[\^?`, ir = `c.? | C(?:-.?)?|${W`[pP]\{(?:\^?[-\x20_]*[A-Za-z][-\x
6303
6309
  | (?:${In.source})+
6304
6310
  | ${or}
6305
6311
  | .
6306
- `.replace(/\s+/g, ""), "gsu"), Xt = new RegExp(W`
6312
+ `.replace(/\s+/g, ""), "gsu"), Xt = new RegExp(H`
6307
6313
  \\ (?:
6308
6314
  ${ir}
6309
6315
  | .
@@ -6325,19 +6331,19 @@ function ul(t, e = {}) {
6325
6331
  }, replaceCurrentModX(p) {
6326
6332
  r[r.length - 1] = p;
6327
6333
  }, singleline: n.rules.singleline };
6328
- let o = [], l;
6329
- for (dt.lastIndex = 0; l = dt.exec(t); ) {
6330
- const p = pl(s, t, l[0], dt.lastIndex);
6334
+ let o = [], i;
6335
+ for (dt.lastIndex = 0; i = dt.exec(t); ) {
6336
+ const p = pl(s, t, i[0], dt.lastIndex);
6331
6337
  p.tokens ? o.push(...p.tokens) : p.token && o.push(p.token), p.lastIndex !== void 0 && (dt.lastIndex = p.lastIndex);
6332
6338
  }
6333
- const i = [];
6339
+ const l = [];
6334
6340
  let c = 0;
6335
6341
  o.filter((p) => p.type === "GroupOpen").forEach((p) => {
6336
- p.kind === "capturing" ? p.number = ++c : p.raw === "(" && i.push(p);
6337
- }), c || i.forEach((p, d) => {
6342
+ p.kind === "capturing" ? p.number = ++c : p.raw === "(" && l.push(p);
6343
+ }), c || l.forEach((p, d) => {
6338
6344
  p.kind = "capturing", p.number = d + 1;
6339
6345
  });
6340
- const u = c || i.length;
6346
+ const u = c || l.length;
6341
6347
  return { tokens: o.map((p) => p.type === "EscapedNumber" ? Nl(p, u) : p).flat(), flags: a };
6342
6348
  }
6343
6349
  function pl(t, e, n, a) {
@@ -6398,10 +6404,10 @@ function pl(t, e, n, a) {
6398
6404
  }
6399
6405
  if (n === ".") return { token: Re("dot", n) };
6400
6406
  if (n === "^" || n === "$") {
6401
- const o = t.singleline ? { "^": W`\A`, $: W`\Z` }[n] : n;
6407
+ const o = t.singleline ? { "^": H`\A`, $: H`\Z` }[n] : n;
6402
6408
  return { token: aa(o, n) };
6403
6409
  }
6404
- return n === "|" ? { token: fl(n) } : In.test(n) ? { tokens: Pl(n) } : { token: he(He(n), n) };
6410
+ return n === "|" ? { token: fl(n) } : In.test(n) ? { tokens: Pl(n) } : { token: ge(We(n), n) };
6405
6411
  }
6406
6412
  function dl(t, e, n) {
6407
6413
  const a = [ra(e[1] === "^", e)];
@@ -6410,11 +6416,11 @@ function dl(t, e, n) {
6410
6416
  const o = s[0];
6411
6417
  if (o[0] === "[" && o[1] !== ":") r++, a.push(ra(o[1] === "^", o));
6412
6418
  else if (o === "]") {
6413
- if (a.at(-1).type === "CharacterClassOpen") a.push(he(93, o));
6419
+ if (a.at(-1).type === "CharacterClassOpen") a.push(ge(93, o));
6414
6420
  else if (r--, a.push(hl(o)), !r) break;
6415
6421
  } else {
6416
- const l = ml(o);
6417
- Array.isArray(l) ? a.push(...l) : a.push(l);
6422
+ const i = ml(o);
6423
+ Array.isArray(i) ? a.push(...i) : a.push(i);
6418
6424
  }
6419
6425
  }
6420
6426
  return { tokens: a, lastIndex: Xt.lastIndex || t.length };
@@ -6426,13 +6432,13 @@ function ml(t) {
6426
6432
  if (!e || !An.has(e.groups.name)) throw new Error(`Invalid POSIX class "${t}"`);
6427
6433
  return Re("posix", t, { value: e.groups.name, negate: !!e.groups.negate });
6428
6434
  }
6429
- return t === "-" ? gl(t) : t === "&&" ? bl(t) : he(He(t), t);
6435
+ return t === "-" ? gl(t) : t === "&&" ? bl(t) : ge(We(t), t);
6430
6436
  }
6431
6437
  function lr(t, { inCharClass: e }) {
6432
6438
  const n = t[1];
6433
6439
  if (n === "c" || n === "C") return Cl(t);
6434
6440
  if ("dDhHsSwW".includes(n)) return El(t);
6435
- if (t.startsWith(W`\o{`)) throw new Error(`Incomplete, invalid, or unsupported octal code point "${t}"`);
6441
+ if (t.startsWith(H`\o{`)) throw new Error(`Incomplete, invalid, or unsupported octal code point "${t}"`);
6436
6442
  if (/^\\[pP]\{/.test(t)) {
6437
6443
  if (t.length === 3) throw new Error(`Incomplete or invalid Unicode property "${t}"`);
6438
6444
  return Al(t);
@@ -6440,18 +6446,18 @@ function lr(t, { inCharClass: e }) {
6440
6446
  if (new RegExp("^\\\\x[89A-Fa-f]\\p{AHex}", "u").test(t)) try {
6441
6447
  const a = t.split(/\\x/).slice(1).map((o) => parseInt(o, 16)), r = new TextDecoder("utf-8", { ignoreBOM: !0, fatal: !0 }).decode(new Uint8Array(a)), s = new TextEncoder();
6442
6448
  return [...r].map((o) => {
6443
- const l = [...s.encode(o)].map((i) => `\\x${i.toString(16)}`).join("");
6444
- return he(He(o), l);
6449
+ const i = [...s.encode(o)].map((l) => `\\x${l.toString(16)}`).join("");
6450
+ return ge(We(o), i);
6445
6451
  });
6446
6452
  } catch {
6447
6453
  throw new Error(`Multibyte code "${t}" incomplete or invalid in Oniguruma`);
6448
6454
  }
6449
- if (n === "u" || n === "x") return he(Rl(t), t);
6450
- if (sa.has(n)) return he(sa.get(n), t);
6455
+ if (n === "u" || n === "x") return ge(Rl(t), t);
6456
+ if (sa.has(n)) return ge(sa.get(n), t);
6451
6457
  if (/\d/.test(n)) return yl(e, t);
6452
- if (t === "\\") throw new Error(W`Incomplete escape "\"`);
6458
+ if (t === "\\") throw new Error(H`Incomplete escape "\"`);
6453
6459
  if (n === "M") throw new Error(`Unsupported meta "${t}"`);
6454
- if ([...t].length === 2) return he(t.codePointAt(1), t);
6460
+ if ([...t].length === 2) return ge(t.codePointAt(1), t);
6455
6461
  throw new Error(`Unexpected escape "${t}"`);
6456
6462
  }
6457
6463
  function fl(t) {
@@ -6463,7 +6469,7 @@ function aa(t, e) {
6463
6469
  function cr(t) {
6464
6470
  return { type: "Backreference", raw: t };
6465
6471
  }
6466
- function he(t, e) {
6472
+ function ge(t, e) {
6467
6473
  return { type: "Character", value: t, raw: e };
6468
6474
  }
6469
6475
  function hl(t) {
@@ -6506,14 +6512,14 @@ const vl = /* @__PURE__ */ new Set(["COUNT", "CMP", "ERROR", "FAIL", "MAX", "MIS
6506
6512
  function Cl(t) {
6507
6513
  const e = t[1] === "c" ? t[2] : t[3];
6508
6514
  if (!e || !/[A-Za-z]/.test(e)) throw new Error(`Unsupported control character "${t}"`);
6509
- return he(He(e.toUpperCase()) - 64, t);
6515
+ return ge(We(e.toUpperCase()) - 64, t);
6510
6516
  }
6511
6517
  function xl(t, e) {
6512
6518
  let { on: n, off: a } = /^\(\?(?<on>[imx]*)(?:-(?<off>[-imx]*))?/.exec(t).groups;
6513
6519
  a ?? (a = "");
6514
- const r = (e.getCurrentModX() || n.includes("x")) && !a.includes("x"), s = ia(n), o = ia(a), l = {};
6515
- if (s && (l.enable = s), o && (l.disable = o), t.endsWith(")")) return e.replaceCurrentModX(r), ur("flags", t, { flags: l });
6516
- if (t.endsWith(":")) return e.pushModX(r), e.numOpenGroups++, Oe("group", t, { ...(s || o) && { flags: l } });
6520
+ const r = (e.getCurrentModX() || n.includes("x")) && !a.includes("x"), s = ia(n), o = ia(a), i = {};
6521
+ if (s && (i.enable = s), o && (i.disable = o), t.endsWith(")")) return e.replaceCurrentModX(r), ur("flags", t, { flags: i });
6522
+ if (t.endsWith(":")) return e.pushModX(r), e.numOpenGroups++, Oe("group", t, { ...(s || o) && { flags: i } });
6517
6523
  throw new Error(`Unexpected flag modifier "${t}"`);
6518
6524
  }
6519
6525
  function Sl(t) {
@@ -6522,7 +6528,7 @@ function Sl(t) {
6522
6528
  const { name: n, tag: a, args: r } = e.groups;
6523
6529
  if (!n) throw new Error(`Invalid named callout "${t}"`);
6524
6530
  if (a === "") throw new Error(`Named callout tag with empty value not allowed "${t}"`);
6525
- const s = r ? r.split(",").filter((u) => u !== "").map((u) => /^[+-]?\d+$/.test(u) ? +u : u) : [], [o, l, i] = s, c = vl.has(n) ? n.toLowerCase() : "custom";
6531
+ const s = r ? r.split(",").filter((u) => u !== "").map((u) => /^[+-]?\d+$/.test(u) ? +u : u) : [], [o, i, l] = s, c = vl.has(n) ? n.toLowerCase() : "custom";
6526
6532
  switch (c) {
6527
6533
  case "fail":
6528
6534
  case "mismatch":
@@ -6536,7 +6542,7 @@ function Sl(t) {
6536
6542
  case "max":
6537
6543
  if (!s.length || s.length > 2) throw new Error(`Named callout must have one or two arguments "${s}"`);
6538
6544
  if (typeof o == "string" && !/^[A-Za-z_]\w*$/.test(o)) throw new Error(`Named callout argument one must be a tag or number "${o}"`);
6539
- if (s.length === 2 && (typeof l == "number" || !/^[<>X]$/.test(l))) throw new Error(`Named callout optional argument two must be '<', '>', or 'X' "${l}"`);
6545
+ if (s.length === 2 && (typeof i == "number" || !/^[<>X]$/.test(i))) throw new Error(`Named callout optional argument two must be '<', '>', or 'X' "${i}"`);
6540
6546
  break;
6541
6547
  case "count":
6542
6548
  case "total_count":
@@ -6546,8 +6552,8 @@ function Sl(t) {
6546
6552
  case "cmp":
6547
6553
  if (s.length !== 3) throw new Error(`Named callout must have three arguments "${s}"`);
6548
6554
  if (typeof o == "string" && !/^[A-Za-z_]\w*$/.test(o)) throw new Error(`Named callout argument one must be a tag or number "${o}"`);
6549
- if (typeof l == "number" || !/^(?:[<>!=]=|[<>])$/.test(l)) throw new Error(`Named callout argument two must be '==', '!=', '>', '<', '>=', or '<=' "${l}"`);
6550
- if (typeof i == "string" && !/^[A-Za-z_]\w*$/.test(i)) throw new Error(`Named callout argument three must be a tag or number "${i}"`);
6555
+ if (typeof i == "number" || !/^(?:[<>!=]=|[<>])$/.test(i)) throw new Error(`Named callout argument two must be '==', '!=', '>', '<', '>=', or '<=' "${i}"`);
6556
+ if (typeof l == "string" && !/^[A-Za-z_]\w*$/.test(l)) throw new Error(`Named callout argument three must be a tag or number "${l}"`);
6551
6557
  break;
6552
6558
  case "custom":
6553
6559
  throw new Error(`Undefined callout name "${n}"`);
@@ -6603,13 +6609,13 @@ function Nl(t, e) {
6603
6609
  const { raw: n, inCharClass: a } = t, r = n.slice(1);
6604
6610
  if (!a && (r !== "0" && r.length === 1 || r[0] !== "0" && +r <= e)) return [cr(n)];
6605
6611
  const s = [], o = r.match(/^[0-7]+|\d/g);
6606
- for (let l = 0; l < o.length; l++) {
6607
- const i = o[l];
6612
+ for (let i = 0; i < o.length; i++) {
6613
+ const l = o[i];
6608
6614
  let c;
6609
- if (l === 0 && i !== "8" && i !== "9") {
6610
- if (c = parseInt(i, 8), c > 127) throw new Error(W`Octal encoded byte above 177 unsupported "${n}"`);
6611
- } else c = He(i);
6612
- s.push(he(c, (l === 0 ? "\\" : "") + i));
6615
+ if (i === 0 && l !== "8" && l !== "9") {
6616
+ if (c = parseInt(l, 8), c > 127) throw new Error(H`Octal encoded byte above 177 unsupported "${n}"`);
6617
+ } else c = We(l);
6618
+ s.push(ge(c, (i === 0 ? "\\" : "") + l));
6613
6619
  }
6614
6620
  return s;
6615
6621
  }
@@ -6621,8 +6627,8 @@ function Pl(t) {
6621
6627
  if (r[0] === "{") {
6622
6628
  const s = /^\{(?<min>\d+),(?<max>\d+)\}\??$/.exec(r);
6623
6629
  if (s) {
6624
- const { min: o, max: l } = s.groups;
6625
- if (+o > +l && r.endsWith("?")) {
6630
+ const { min: o, max: i } = s.groups;
6631
+ if (+o > +i && r.endsWith("?")) {
6626
6632
  n.lastIndex--, e.push(oa(r.slice(0, -1)));
6627
6633
  continue;
6628
6634
  }
@@ -6661,7 +6667,7 @@ function dr(t, e = {}) {
6661
6667
  case "CharacterSet":
6662
6668
  return Gl(m, s);
6663
6669
  case "Directive":
6664
- return Wl(m.kind, { flags: m.flags });
6670
+ return Hl(m.kind, { flags: m.flags });
6665
6671
  case "GroupOpen":
6666
6672
  return Fl(m, s, f);
6667
6673
  case "NamedCallout":
@@ -6673,33 +6679,33 @@ function dr(t, e = {}) {
6673
6679
  default:
6674
6680
  throw new Error(`Unexpected token type "${m.type}"`);
6675
6681
  }
6676
- }, s = { capturingGroups: [], hasNumberedRef: !1, namedGroupsByName: /* @__PURE__ */ new Map(), nextIndex: 0, normalizeUnknownPropertyNames: n.normalizeUnknownPropertyNames, parent: null, skipBackrefValidation: n.skipBackrefValidation, skipLookbehindValidation: n.skipLookbehindValidation, skipPropertyNameValidation: n.skipPropertyNameValidation, subroutines: [], tokens: a.tokens, unicodePropertyMap: n.unicodePropertyMap, walk: r }, o = Zl(Hl(a.flags));
6677
- let l = o.body[0];
6682
+ }, s = { capturingGroups: [], hasNumberedRef: !1, namedGroupsByName: /* @__PURE__ */ new Map(), nextIndex: 0, normalizeUnknownPropertyNames: n.normalizeUnknownPropertyNames, parent: null, skipBackrefValidation: n.skipBackrefValidation, skipLookbehindValidation: n.skipLookbehindValidation, skipPropertyNameValidation: n.skipPropertyNameValidation, subroutines: [], tokens: a.tokens, unicodePropertyMap: n.unicodePropertyMap, walk: r }, o = Zl(Wl(a.flags));
6683
+ let i = o.body[0];
6678
6684
  for (; s.nextIndex < a.tokens.length; ) {
6679
- const d = r(l, {});
6680
- d.type === "Alternative" ? (o.body.push(d), l = d) : l.body.push(d);
6685
+ const d = r(i, {});
6686
+ d.type === "Alternative" ? (o.body.push(d), i = d) : i.body.push(d);
6681
6687
  }
6682
- const { capturingGroups: i, hasNumberedRef: c, namedGroupsByName: u, subroutines: p } = s;
6688
+ const { capturingGroups: l, hasNumberedRef: c, namedGroupsByName: u, subroutines: p } = s;
6683
6689
  if (c && u.size && !n.rules.captureGroup) throw new Error("Numbered backref/subroutine not allowed when using named capture");
6684
6690
  for (const { ref: d } of p) if (typeof d == "number") {
6685
- if (d > i.length) throw new Error("Subroutine uses a group number that's not defined");
6686
- d && (i[d - 1].isSubroutined = !0);
6691
+ if (d > l.length) throw new Error("Subroutine uses a group number that's not defined");
6692
+ d && (l[d - 1].isSubroutined = !0);
6687
6693
  } else if (u.has(d)) {
6688
- if (u.get(d).length > 1) throw new Error(W`Subroutine uses a duplicate group name "\g<${d}>"`);
6694
+ if (u.get(d).length > 1) throw new Error(H`Subroutine uses a duplicate group name "\g<${d}>"`);
6689
6695
  u.get(d)[0].isSubroutined = !0;
6690
- } else throw new Error(W`Subroutine uses a group name that's not defined "\g<${d}>"`);
6696
+ } else throw new Error(H`Subroutine uses a group name that's not defined "\g<${d}>"`);
6691
6697
  return o;
6692
6698
  }
6693
6699
  function Ll({ kind: t }) {
6694
- return mn(Ve({ "^": "line_start", $: "line_end", "\\A": "string_start", "\\b": "word_boundary", "\\B": "word_boundary", "\\G": "search_start", "\\y": "text_segment_boundary", "\\Y": "text_segment_boundary", "\\z": "string_end", "\\Z": "string_end_newline" }[t], `Unexpected assertion kind "${t}"`), { negate: t === W`\B` || t === W`\Y` });
6700
+ return mn(Ve({ "^": "line_start", $: "line_end", "\\A": "string_start", "\\b": "word_boundary", "\\B": "word_boundary", "\\G": "search_start", "\\y": "text_segment_boundary", "\\Y": "text_segment_boundary", "\\z": "string_end", "\\Z": "string_end_newline" }[t], `Unexpected assertion kind "${t}"`), { negate: t === H`\B` || t === H`\Y` });
6695
6701
  }
6696
6702
  function jl({ raw: t }, e) {
6697
6703
  const n = /^\\k[<']/.test(t), a = n ? t.slice(3, -1) : t.slice(1), r = (s, o = !1) => {
6698
- const l = e.capturingGroups.length;
6699
- let i = !1;
6700
- if (s > l) if (e.skipBackrefValidation) i = !0;
6704
+ const i = e.capturingGroups.length;
6705
+ let l = !1;
6706
+ if (s > i) if (e.skipBackrefValidation) l = !0;
6701
6707
  else throw new Error(`Not enough capturing groups defined to the left "${t}"`);
6702
- return e.hasNumberedRef = !0, fn(o ? l + 1 - s : s, { orphan: i });
6708
+ return e.hasNumberedRef = !0, fn(o ? i + 1 - s : s, { orphan: l });
6703
6709
  };
6704
6710
  if (n) {
6705
6711
  const s = /^(?<sign>-?)0*(?<num>[1-9]\d*)$/.exec(a);
@@ -6711,45 +6717,45 @@ function jl({ raw: t }, e) {
6711
6717
  return r(+a);
6712
6718
  }
6713
6719
  function Ml(t, e, n) {
6714
- const { tokens: a, walk: r } = e, s = e.parent, o = s.body.at(-1), l = a[e.nextIndex];
6715
- if (!n.isCheckingRangeEnd && o && o.type !== "CharacterClass" && o.type !== "CharacterClassRange" && l && l.type !== "CharacterClassOpen" && l.type !== "CharacterClassClose" && l.type !== "CharacterClassIntersector") {
6716
- const i = r(s, { ...n, isCheckingRangeEnd: !0 });
6717
- if (o.type === "Character" && i.type === "Character") return s.body.pop(), ql(o, i);
6720
+ const { tokens: a, walk: r } = e, s = e.parent, o = s.body.at(-1), i = a[e.nextIndex];
6721
+ if (!n.isCheckingRangeEnd && o && o.type !== "CharacterClass" && o.type !== "CharacterClassRange" && i && i.type !== "CharacterClassOpen" && i.type !== "CharacterClassClose" && i.type !== "CharacterClassIntersector") {
6722
+ const l = r(s, { ...n, isCheckingRangeEnd: !0 });
6723
+ if (o.type === "Character" && l.type === "Character") return s.body.pop(), ql(o, l);
6718
6724
  throw new Error("Invalid character class range");
6719
6725
  }
6720
- return Bt(He("-"));
6726
+ return Bt(We("-"));
6721
6727
  }
6722
6728
  function Ol({ negate: t }, e, n) {
6723
6729
  const { tokens: a, walk: r } = e, s = a[e.nextIndex], o = [bt()];
6724
- let l = ua(s);
6725
- for (; l.type !== "CharacterClassClose"; ) {
6726
- if (l.type === "CharacterClassIntersector") o.push(bt()), e.nextIndex++;
6730
+ let i = ua(s);
6731
+ for (; i.type !== "CharacterClassClose"; ) {
6732
+ if (i.type === "CharacterClassIntersector") o.push(bt()), e.nextIndex++;
6727
6733
  else {
6728
6734
  const c = o.at(-1);
6729
6735
  c.body.push(r(c, n));
6730
6736
  }
6731
- l = ua(a[e.nextIndex], s);
6737
+ i = ua(a[e.nextIndex], s);
6732
6738
  }
6733
- const i = bt({ negate: t });
6734
- return o.length === 1 ? i.body = o[0].body : (i.kind = "intersection", i.body = o.map((c) => c.body.length === 1 ? c.body[0] : c)), e.nextIndex++, i;
6739
+ const l = bt({ negate: t });
6740
+ return o.length === 1 ? l.body = o[0].body : (l.kind = "intersection", l.body = o.map((c) => c.body.length === 1 ? c.body[0] : c)), e.nextIndex++, l;
6735
6741
  }
6736
6742
  function Gl({ kind: t, negate: e, value: n }, a) {
6737
6743
  const { normalizeUnknownPropertyNames: r, skipPropertyNameValidation: s, unicodePropertyMap: o } = a;
6738
6744
  if (t === "property") {
6739
- const l = Tt(n);
6740
- if (An.has(l) && !(o != null && o.has(l))) t = "posix", n = l;
6745
+ const i = Tt(n);
6746
+ if (An.has(i) && !(o != null && o.has(i))) t = "posix", n = i;
6741
6747
  else return Ge(n, { negate: e, normalizeUnknownPropertyNames: r, skipPropertyNameValidation: s, unicodePropertyMap: o });
6742
6748
  }
6743
6749
  return t === "posix" ? Xl(n, { negate: e }) : hn(t, { negate: e });
6744
6750
  }
6745
6751
  function Fl(t, e, n) {
6746
- const { tokens: a, capturingGroups: r, namedGroupsByName: s, skipLookbehindValidation: o, walk: l } = e, i = Kl(t), c = i.type === "AbsenceFunction", u = ca(i), p = u && i.negate;
6747
- if (i.type === "CapturingGroup" && (r.push(i), i.name && cl(s, i.name, []).push(i)), c && n.isInAbsenceFunction) throw new Error("Nested absence function not supported by Oniguruma");
6752
+ const { tokens: a, capturingGroups: r, namedGroupsByName: s, skipLookbehindValidation: o, walk: i } = e, l = Kl(t), c = l.type === "AbsenceFunction", u = ca(l), p = u && l.negate;
6753
+ if (l.type === "CapturingGroup" && (r.push(l), l.name && cl(s, l.name, []).push(l)), c && n.isInAbsenceFunction) throw new Error("Nested absence function not supported by Oniguruma");
6748
6754
  let d = pa(a[e.nextIndex]);
6749
6755
  for (; d.type !== "GroupClose"; ) {
6750
- if (d.type === "Alternator") i.body.push(Be()), e.nextIndex++;
6756
+ if (d.type === "Alternator") l.body.push(Be()), e.nextIndex++;
6751
6757
  else {
6752
- const f = i.body.at(-1), m = l(f, { ...n, isInAbsenceFunction: n.isInAbsenceFunction || c, isInLookbehind: n.isInLookbehind || u, isInNegLookbehind: n.isInNegLookbehind || p });
6758
+ const f = l.body.at(-1), m = i(f, { ...n, isInAbsenceFunction: n.isInAbsenceFunction || c, isInLookbehind: n.isInLookbehind || u, isInNegLookbehind: n.isInNegLookbehind || p });
6753
6759
  if (f.body.push(m), (u || n.isInLookbehind) && !o) {
6754
6760
  const _ = "Lookbehind includes a pattern not allowed by Oniguruma";
6755
6761
  if (p || n.isInNegLookbehind) {
@@ -6759,7 +6765,7 @@ function Fl(t, e, n) {
6759
6765
  }
6760
6766
  d = pa(a[e.nextIndex]);
6761
6767
  }
6762
- return e.nextIndex++, i;
6768
+ return e.nextIndex++, l;
6763
6769
  }
6764
6770
  function Dl({ kind: t, min: e, max: n }, a) {
6765
6771
  const r = a.parent, s = r.body.at(-1);
@@ -6772,8 +6778,8 @@ function Ul({ raw: t }, e) {
6772
6778
  let r = t.slice(3, -1);
6773
6779
  const s = /^(?<sign>[-+]?)0*(?<num>[1-9]\d*)$/.exec(r);
6774
6780
  if (s) {
6775
- const l = +s.groups.num, i = n.length;
6776
- if (e.hasNumberedRef = !0, r = { "": l, "+": i + l, "-": i + 1 - l }[s.groups.sign], r < 1) throw new Error("Invalid subroutine number");
6781
+ const i = +s.groups.num, l = n.length;
6782
+ if (e.hasNumberedRef = !0, r = { "": i, "+": l + i, "-": l + 1 - i }[s.groups.sign], r < 1) throw new Error("Invalid subroutine number");
6777
6783
  } else r === "0" && (r = 0);
6778
6784
  const o = hr(r);
6779
6785
  return a.push(o), o;
@@ -6818,12 +6824,12 @@ function hn(t, e) {
6818
6824
  const n = !!(e != null && e.negate), a = { type: "CharacterSet", kind: t };
6819
6825
  return (t === "digit" || t === "hex" || t === "newline" || t === "space" || t === "word") && (a.negate = n), (t === "text_segment" || t === "newline" && !n) && (a.variableLength = !0), a;
6820
6826
  }
6821
- function Wl(t, e = {}) {
6827
+ function Hl(t, e = {}) {
6822
6828
  if (t === "keep") return { type: "Directive", kind: t };
6823
6829
  if (t === "flags") return { type: "Directive", kind: t, flags: Ve(e.flags) };
6824
6830
  throw new Error(`Unexpected directive kind "${t}"`);
6825
6831
  }
6826
- function Hl(t) {
6832
+ function Wl(t) {
6827
6833
  return { type: "Flags", ...t };
6828
6834
  }
6829
6835
  function oe(t) {
@@ -6859,7 +6865,7 @@ function Ge(t, e) {
6859
6865
  let a = (r = n.unicodePropertyMap) == null ? void 0 : r.get(Tt(t));
6860
6866
  if (!a) {
6861
6867
  if (n.normalizeUnknownPropertyNames) a = Ql(t);
6862
- else if (n.unicodePropertyMap && !n.skipPropertyNameValidation) throw new Error(W`Invalid Unicode property "\p{${t}}"`);
6868
+ else if (n.unicodePropertyMap && !n.skipPropertyNameValidation) throw new Error(H`Invalid Unicode property "\p{${t}}"`);
6863
6869
  }
6864
6870
  return { type: "CharacterSet", kind: "property", value: a ?? t, negate: n.negate };
6865
6871
  }
@@ -6913,29 +6919,29 @@ function pa(t) {
6913
6919
  }
6914
6920
  function Je(t, e, n = null) {
6915
6921
  function a(s, o) {
6916
- for (let l = 0; l < s.length; l++) {
6917
- const i = r(s[l], o, l, s);
6918
- l = Math.max(-1, l + i);
6922
+ for (let i = 0; i < s.length; i++) {
6923
+ const l = r(s[i], o, i, s);
6924
+ i = Math.max(-1, i + l);
6919
6925
  }
6920
6926
  }
6921
- function r(s, o = null, l = null, i = null) {
6927
+ function r(s, o = null, i = null, l = null) {
6922
6928
  var b, w;
6923
6929
  let c = 0, u = !1;
6924
- const p = { node: s, parent: o, key: l, container: i, root: t, remove() {
6925
- mt(i).splice(Math.max(0, je(l) + c), 1), c--, u = !0;
6930
+ const p = { node: s, parent: o, key: i, container: l, root: t, remove() {
6931
+ mt(l).splice(Math.max(0, je(i) + c), 1), c--, u = !0;
6926
6932
  }, removeAllNextSiblings() {
6927
- return mt(i).splice(je(l) + 1);
6933
+ return mt(l).splice(je(i) + 1);
6928
6934
  }, removeAllPrevSiblings() {
6929
- const k = je(l) + c;
6930
- return c -= k, mt(i).splice(0, Math.max(0, k));
6935
+ const k = je(i) + c;
6936
+ return c -= k, mt(l).splice(0, Math.max(0, k));
6931
6937
  }, replaceWith(k, v = {}) {
6932
6938
  const A = !!v.traverse;
6933
- i ? i[Math.max(0, je(l) + c)] = k : Ve(o, "Can't replace root node")[l] = k, A && r(k, o, l, i), u = !0;
6939
+ l ? l[Math.max(0, je(i) + c)] = k : Ve(o, "Can't replace root node")[i] = k, A && r(k, o, i, l), u = !0;
6934
6940
  }, replaceWithMultiple(k, v = {}) {
6935
6941
  const A = !!v.traverse;
6936
- if (mt(i).splice(Math.max(0, je(l) + c), 1, ...k), c += k.length - 1, A) {
6942
+ if (mt(l).splice(Math.max(0, je(i) + c), 1, ...k), c += k.length - 1, A) {
6937
6943
  let O = 0;
6938
- for (let I = 0; I < k.length; I++) O += r(k[I], o, je(l) + I + O, i);
6944
+ for (let I = 0; I < k.length; I++) O += r(k[I], o, je(i) + I + O, l);
6939
6945
  }
6940
6946
  u = !0;
6941
6947
  }, skip() {
@@ -6995,25 +7001,25 @@ function ec(t, e) {
6995
7001
  function tc(t, e, n, a) {
6996
7002
  return t.slice(0, e) + a + t.slice(e + n.length);
6997
7003
  }
6998
- const ae = Object.freeze({
7004
+ const re = Object.freeze({
6999
7005
  DEFAULT: "DEFAULT",
7000
7006
  CHAR_CLASS: "CHAR_CLASS"
7001
7007
  });
7002
7008
  function Rn(t, e, n, a) {
7003
7009
  const r = new RegExp(String.raw`${e}|(?<$skip>\[\^?|\\?.)`, "gsu"), s = [!1];
7004
- let o = 0, l = "";
7005
- for (const i of t.matchAll(r)) {
7006
- const { 0: c, groups: { $skip: u } } = i;
7007
- if (!u && (!a || a === ae.DEFAULT == !o)) {
7008
- n instanceof Function ? l += n(i, {
7009
- context: o ? ae.CHAR_CLASS : ae.DEFAULT,
7010
+ let o = 0, i = "";
7011
+ for (const l of t.matchAll(r)) {
7012
+ const { 0: c, groups: { $skip: u } } = l;
7013
+ if (!u && (!a || a === re.DEFAULT == !o)) {
7014
+ n instanceof Function ? i += n(l, {
7015
+ context: o ? re.CHAR_CLASS : re.DEFAULT,
7010
7016
  negated: s[s.length - 1]
7011
- }) : l += n;
7017
+ }) : i += n;
7012
7018
  continue;
7013
7019
  }
7014
- c[0] === "[" ? (o++, s.push(c[1] === "^")) : c === "]" && o && (o--, s.pop()), l += c;
7020
+ c[0] === "[" ? (o++, s.push(c[1] === "^")) : c === "]" && o && (o--, s.pop()), i += c;
7015
7021
  }
7016
- return l;
7022
+ return i;
7017
7023
  }
7018
7024
  function br(t, e, n, a) {
7019
7025
  Rn(t, e, n, a);
@@ -7025,10 +7031,10 @@ function nc(t, e, n = 0, a) {
7025
7031
  r.lastIndex = n;
7026
7032
  let s = 0, o;
7027
7033
  for (; o = r.exec(t); ) {
7028
- const { 0: l, groups: { $skip: i } } = o;
7029
- if (!i && (!a || a === ae.DEFAULT == !s))
7034
+ const { 0: i, groups: { $skip: l } } = o;
7035
+ if (!l && (!a || a === re.DEFAULT == !s))
7030
7036
  return o;
7031
- l === "[" ? s++ : l === "]" && s && s--, r.lastIndex == o.index && r.lastIndex++;
7037
+ i === "[" ? s++ : i === "]" && s && s--, r.lastIndex == o.index && r.lastIndex++;
7032
7038
  }
7033
7039
  return null;
7034
7040
  }
@@ -7040,14 +7046,14 @@ function ac(t, e) {
7040
7046
  n.lastIndex = e;
7041
7047
  let a = t.length, r = 0, s = 1, o;
7042
7048
  for (; o = n.exec(t); ) {
7043
- const [l] = o;
7044
- if (l === "[")
7049
+ const [i] = o;
7050
+ if (i === "[")
7045
7051
  r++;
7046
7052
  else if (r)
7047
- l === "]" && r--;
7048
- else if (l === "(")
7053
+ i === "]" && r--;
7054
+ else if (i === "(")
7049
7055
  s++;
7050
- else if (l === ")" && (s--, !s)) {
7056
+ else if (i === ")" && (s--, !s)) {
7051
7057
  a = o.index;
7052
7058
  break;
7053
7059
  }
@@ -7064,8 +7070,8 @@ function rc(t, e) {
7064
7070
  captureTransfers: a,
7065
7071
  hiddenCaptures: n
7066
7072
  };
7067
- const r = "(?>", s = "(?:(?=(", o = [0], l = [];
7068
- let i = 0, c = 0, u = NaN, p;
7073
+ const r = "(?>", s = "(?:(?=(", o = [0], i = [];
7074
+ let l = 0, c = 0, u = NaN, p;
7069
7075
  do {
7070
7076
  p = !1;
7071
7077
  let d = 0, f = 0, m = !1, _;
@@ -7080,12 +7086,12 @@ function rc(t, e) {
7080
7086
  else if (m && k)
7081
7087
  f++;
7082
7088
  else if (w)
7083
- m ? f++ : (i++, o.push(i + c));
7089
+ m ? f++ : (l++, o.push(l + c));
7084
7090
  else if (g === ")" && m) {
7085
7091
  if (!f) {
7086
7092
  c++;
7087
- const v = i + c;
7088
- if (t = `${t.slice(0, u)}${s}${t.slice(u + r.length, b)}))<$$${v}>)${t.slice(b + 1)}`, p = !0, l.push(v), ec(n, v), a.size) {
7093
+ const v = l + c;
7094
+ if (t = `${t.slice(0, u)}${s}${t.slice(u + r.length, b)}))<$$${v}>)${t.slice(b + 1)}`, p = !0, i.push(v), ec(n, v), a.size) {
7089
7095
  const A = /* @__PURE__ */ new Map();
7090
7096
  a.forEach((O, I) => {
7091
7097
  A.set(
@@ -7100,7 +7106,7 @@ function rc(t, e) {
7100
7106
  }
7101
7107
  }
7102
7108
  } while (p);
7103
- return n.push(...l), t = Rn(
7109
+ return n.push(...i), t = Rn(
7104
7110
  t,
7105
7111
  String.raw`\\(?<backrefNum>[1-9]\d*)|<\$\$(?<wrappedBackrefNum>\d+)>`,
7106
7112
  ({ 0: d, groups: { backrefNum: f, wrappedBackrefNum: m } }) => {
@@ -7112,7 +7118,7 @@ function rc(t, e) {
7112
7118
  }
7113
7119
  return `\\${m}`;
7114
7120
  },
7115
- ae.DEFAULT
7121
+ re.DEFAULT
7116
7122
  ), {
7117
7123
  pattern: t,
7118
7124
  captureTransfers: a,
@@ -7143,37 +7149,37 @@ function sc(t) {
7143
7149
  const e = [];
7144
7150
  let n = null, a = null, r = "", s = 0, o;
7145
7151
  for (Zt.lastIndex = 0; o = Zt.exec(t); ) {
7146
- const { 0: l, index: i, groups: { qBase: c, qMod: u, invalidQ: p } } = o;
7147
- if (l === "[")
7148
- s || (a = i), s++;
7149
- else if (l === "]")
7152
+ const { 0: i, index: l, groups: { qBase: c, qMod: u, invalidQ: p } } = o;
7153
+ if (i === "[")
7154
+ s || (a = l), s++;
7155
+ else if (i === "]")
7150
7156
  s ? s-- : a = null;
7151
7157
  else if (!s)
7152
7158
  if (u === "+" && r && !r.startsWith("(")) {
7153
7159
  if (p)
7154
- throw new Error(`Invalid quantifier "${l}"`);
7160
+ throw new Error(`Invalid quantifier "${i}"`);
7155
7161
  let d = -1;
7156
7162
  if (/^\{\d+\}$/.test(c))
7157
- t = tc(t, i + c.length, u, "");
7163
+ t = tc(t, l + c.length, u, "");
7158
7164
  else {
7159
7165
  if (r === ")" || r === "]") {
7160
7166
  const f = r === ")" ? n : a;
7161
7167
  if (f === null)
7162
7168
  throw new Error(`Invalid unmatched "${r}"`);
7163
- t = `${t.slice(0, f)}(?>${t.slice(f, i)}${c})${t.slice(i + l.length)}`;
7169
+ t = `${t.slice(0, f)}(?>${t.slice(f, l)}${c})${t.slice(l + i.length)}`;
7164
7170
  } else
7165
- t = `${t.slice(0, i - r.length)}(?>${r}${c})${t.slice(i + l.length)}`;
7171
+ t = `${t.slice(0, l - r.length)}(?>${r}${c})${t.slice(l + i.length)}`;
7166
7172
  d += 4;
7167
7173
  }
7168
7174
  Zt.lastIndex += d;
7169
- } else l[0] === "(" ? e.push(i) : l === ")" && (n = e.length ? e.pop() : null);
7170
- r = l;
7175
+ } else i[0] === "(" ? e.push(l) : i === ")" && (n = e.length ? e.pop() : null);
7176
+ r = i;
7171
7177
  }
7172
7178
  return {
7173
7179
  pattern: t
7174
7180
  };
7175
7181
  }
7176
- const ne = String.raw, oc = ne`\\g<(?<gRNameOrNum>[^>&]+)&R=(?<gRDepth>[^>]+)>`, gn = ne`\(\?R=(?<rDepth>[^\)]+)\)|${oc}`, Lt = ne`\(\?<(?![=!])(?<captureName>[^>]+)>`, _r = ne`${Lt}|(?<unnamed>\()(?!\?)`, xe = new RegExp(ne`${Lt}|${gn}|\(\?|\\?.`, "gsu"), Kt = "Cannot use multiple overlapping recursions";
7182
+ const ae = String.raw, oc = ae`\\g<(?<gRNameOrNum>[^>&]+)&R=(?<gRDepth>[^>]+)>`, gn = ae`\(\?R=(?<rDepth>[^\)]+)\)|${oc}`, Lt = ae`\(\?<(?![=!])(?<captureName>[^>]+)>`, _r = ae`${Lt}|(?<unnamed>\()(?!\?)`, xe = new RegExp(ae`${Lt}|${gn}|\(\?|\\?.`, "gsu"), Kt = "Cannot use multiple overlapping recursions";
7177
7183
  function ic(t, e) {
7178
7184
  const { hiddenCaptures: n, mode: a } = {
7179
7185
  hiddenCaptures: [],
@@ -7187,9 +7193,9 @@ function ic(t, e) {
7187
7193
  captureTransfers: r,
7188
7194
  hiddenCaptures: n
7189
7195
  };
7190
- if (a === "plugin" && ft(t, ne`\(\?\(DEFINE\)`, ae.DEFAULT))
7196
+ if (a === "plugin" && ft(t, ae`\(\?\(DEFINE\)`, re.DEFAULT))
7191
7197
  throw new Error("DEFINE groups cannot be used with recursion");
7192
- const s = [], o = ft(t, ne`\\[1-9]`, ae.DEFAULT), l = /* @__PURE__ */ new Map(), i = [];
7198
+ const s = [], o = ft(t, ae`\\[1-9]`, re.DEFAULT), i = /* @__PURE__ */ new Map(), l = [];
7193
7199
  let c = !1, u = 0, p = 0, d;
7194
7200
  for (xe.lastIndex = 0; d = xe.exec(t); ) {
7195
7201
  const { 0: f, groups: { captureName: m, rDepth: _, gRNameOrNum: g, gRDepth: b } } = d;
@@ -7207,7 +7213,7 @@ function ic(t, e) {
7207
7213
  `${a === "external" ? "Backrefs" : "Numbered backrefs"} cannot be used with global recursion`
7208
7214
  );
7209
7215
  const w = t.slice(0, d.index), k = t.slice(xe.lastIndex);
7210
- if (ft(k, gn, ae.DEFAULT))
7216
+ if (ft(k, gn, re.DEFAULT))
7211
7217
  throw new Error(Kt);
7212
7218
  const v = +_ - 1;
7213
7219
  t = fa(
@@ -7230,16 +7236,16 @@ function ic(t, e) {
7230
7236
  } else if (g) {
7231
7237
  ma(b);
7232
7238
  let w = !1;
7233
- for (const T of i)
7239
+ for (const T of l)
7234
7240
  if (T.name === g || T.num === +g) {
7235
7241
  if (w = !0, T.hasRecursedWithin)
7236
7242
  throw new Error(Kt);
7237
7243
  break;
7238
7244
  }
7239
7245
  if (!w)
7240
- throw new Error(ne`Recursive \g cannot be used outside the referenced group "${a === "external" ? g : ne`\g<${g}&R=${b}>`}"`);
7241
- const k = l.get(g), v = ac(t, k);
7242
- if (o && ft(v, ne`${Lt}|\((?!\?)`, ae.DEFAULT))
7246
+ throw new Error(ae`Recursive \g cannot be used outside the referenced group "${a === "external" ? g : ae`\g<${g}&R=${b}>`}"`);
7247
+ const k = i.get(g), v = ac(t, k);
7248
+ if (o && ft(v, ae`${Lt}|\((?!\?)`, re.DEFAULT))
7243
7249
  throw new Error(
7244
7250
  // When used in `external` mode by transpilers other than Regex+, backrefs might have
7245
7251
  // gone through conversion from named to numbered, so avoid a misleading error
@@ -7262,17 +7268,17 @@ function ic(t, e) {
7262
7268
  I,
7263
7269
  p
7264
7270
  );
7265
- const E = t.slice(0, k), $ = t.slice(k + v.length);
7266
- t = `${E}${ce}${$}`, xe.lastIndex += ce.length - f.length - A.length - O.length, i.forEach((T) => T.hasRecursedWithin = !0), c = !0;
7271
+ const x = t.slice(0, k), $ = t.slice(k + v.length);
7272
+ t = `${x}${ce}${$}`, xe.lastIndex += ce.length - f.length - A.length - O.length, l.forEach((T) => T.hasRecursedWithin = !0), c = !0;
7267
7273
  } else if (m)
7268
- p++, l.set(String(p), xe.lastIndex), l.set(m, xe.lastIndex), i.push({
7274
+ p++, i.set(String(p), xe.lastIndex), i.set(m, xe.lastIndex), l.push({
7269
7275
  num: p,
7270
7276
  name: m
7271
7277
  });
7272
7278
  else if (f[0] === "(") {
7273
7279
  const w = f === "(";
7274
- w && (p++, l.set(String(p), xe.lastIndex)), i.push(w ? { num: p } : {});
7275
- } else f === ")" && i.pop();
7280
+ w && (p++, i.set(String(p), xe.lastIndex)), l.push(w ? { num: p } : {});
7281
+ } else f === ")" && l.pop();
7276
7282
  }
7277
7283
  return n.push(...s), {
7278
7284
  pattern: t,
@@ -7288,27 +7294,27 @@ function ma(t) {
7288
7294
  throw new Error(e);
7289
7295
  }
7290
7296
  function fa(t, e, n, a, r, s, o) {
7291
- const l = /* @__PURE__ */ new Set();
7297
+ const i = /* @__PURE__ */ new Set();
7292
7298
  a && br(t + e, Lt, ({ groups: { captureName: c } }) => {
7293
- l.add(c);
7294
- }, ae.DEFAULT);
7295
- const i = [
7299
+ i.add(c);
7300
+ }, re.DEFAULT);
7301
+ const l = [
7296
7302
  n,
7297
- a ? l : null,
7303
+ a ? i : null,
7298
7304
  r,
7299
7305
  s,
7300
7306
  o
7301
7307
  ];
7302
- return `${t}${ha(`(?:${t}`, "forward", ...i)}(?:)${ha(`${e})`, "backward", ...i)}${e}`;
7308
+ return `${t}${ha(`(?:${t}`, "forward", ...l)}(?:)${ha(`${e})`, "backward", ...l)}${e}`;
7303
7309
  }
7304
7310
  function ha(t, e, n, a, r, s, o) {
7305
- const i = (u) => e === "forward" ? u + 2 : n - u + 2 - 1;
7311
+ const l = (u) => e === "forward" ? u + 2 : n - u + 2 - 1;
7306
7312
  let c = "";
7307
7313
  for (let u = 0; u < n; u++) {
7308
- const p = i(u);
7314
+ const p = l(u);
7309
7315
  c += Rn(
7310
7316
  t,
7311
- ne`${_r}|\\k<(?<backref>[^>]+)>`,
7317
+ ae`${_r}|\\k<(?<backref>[^>]+)>`,
7312
7318
  ({ 0: d, groups: { captureName: f, unnamed: m, backref: _ } }) => {
7313
7319
  if (_ && a && !a.has(_))
7314
7320
  return d;
@@ -7317,9 +7323,9 @@ function ha(t, e, n, a, r, s, o) {
7317
7323
  const b = o + s.length + 1;
7318
7324
  return s.push(b), lc(r, b), m ? d : `(?<${f}${g}>`;
7319
7325
  }
7320
- return ne`\k<${_}${g}>`;
7326
+ return ae`\k<${_}${g}>`;
7321
7327
  },
7322
- ae.DEFAULT
7328
+ re.DEFAULT
7323
7329
  );
7324
7330
  }
7325
7331
  return c;
@@ -7331,27 +7337,27 @@ function lc(t, e) {
7331
7337
  function ga(t, e, n, a, r, s) {
7332
7338
  if (t.size && a) {
7333
7339
  let o = 0;
7334
- br(e, _r, () => o++, ae.DEFAULT);
7335
- const l = s - o + r, i = /* @__PURE__ */ new Map();
7340
+ br(e, _r, () => o++, re.DEFAULT);
7341
+ const i = s - o + r, l = /* @__PURE__ */ new Map();
7336
7342
  return t.forEach((c, u) => {
7337
- const p = (a - o * n) / n, d = o * n, f = u > l + o ? u + a : u, m = [];
7343
+ const p = (a - o * n) / n, d = o * n, f = u > i + o ? u + a : u, m = [];
7338
7344
  for (const _ of c)
7339
- if (_ <= l)
7345
+ if (_ <= i)
7340
7346
  m.push(_);
7341
- else if (_ > l + o + p)
7347
+ else if (_ > i + o + p)
7342
7348
  m.push(_ + a);
7343
- else if (_ <= l + o)
7349
+ else if (_ <= i + o)
7344
7350
  for (let g = 0; g <= n; g++)
7345
7351
  m.push(_ + o * g);
7346
7352
  else
7347
7353
  for (let g = 0; g <= n; g++)
7348
7354
  m.push(_ + d + p * g);
7349
- i.set(f, m);
7350
- }), i;
7355
+ l.set(f, m);
7356
+ }), l;
7351
7357
  }
7352
7358
  return t;
7353
7359
  }
7354
- var U = String.fromCodePoint, C = String.raw, ge = {
7360
+ var U = String.fromCodePoint, C = String.raw, be = {
7355
7361
  flagGroups: (() => {
7356
7362
  try {
7357
7363
  new RegExp("(?i:)");
@@ -7369,7 +7375,7 @@ var U = String.fromCodePoint, C = String.raw, ge = {
7369
7375
  return !0;
7370
7376
  })()
7371
7377
  };
7372
- ge.bugFlagVLiteralHyphenIsRange = ge.unicodeSets ? (() => {
7378
+ be.bugFlagVLiteralHyphenIsRange = be.unicodeSets ? (() => {
7373
7379
  try {
7374
7380
  new RegExp(C`[\d\-a]`, "v");
7375
7381
  } catch {
@@ -7377,7 +7383,7 @@ ge.bugFlagVLiteralHyphenIsRange = ge.unicodeSets ? (() => {
7377
7383
  }
7378
7384
  return !1;
7379
7385
  })() : !1;
7380
- ge.bugNestedClassIgnoresNegation = ge.unicodeSets && new RegExp("[[^a]]", "v").test("a");
7386
+ be.bugNestedClassIgnoresNegation = be.unicodeSets && new RegExp("[[^a]]", "v").test("a");
7381
7387
  function It(t, { enable: e, disable: n }) {
7382
7388
  return {
7383
7389
  dotAll: !(n != null && n.dotAll) && !!(e != null && e.dotAll || t.dotAll),
@@ -7453,7 +7459,7 @@ function $r(t = {}) {
7453
7459
  ...t.rules
7454
7460
  }
7455
7461
  };
7456
- return e.target === "auto" && (e.target = ge.flagGroups ? "ES2025" : ge.unicodeSets ? "ES2024" : "ES2018"), e;
7462
+ return e.target === "auto" && (e.target = be.flagGroups ? "ES2025" : be.unicodeSets ? "ES2024" : "ES2018"), e;
7457
7463
  }
7458
7464
  var pc = "[ -\r ]", dc = /* @__PURE__ */ new Set([
7459
7465
  U(304),
@@ -7574,16 +7580,16 @@ XID_Start XIDS`.split(/\s/).map((t) => [Tt(t), t])
7574
7580
  [U(969), U(8486)]
7575
7581
  // ω, Ω (Ohm)
7576
7582
  ]), hc = new Map([
7577
- ye(453),
7578
- ye(456),
7579
- ye(459),
7580
- ye(498),
7583
+ _e(453),
7584
+ _e(456),
7585
+ _e(459),
7586
+ _e(498),
7581
7587
  ...Jt(8072, 8079),
7582
7588
  ...Jt(8088, 8095),
7583
7589
  ...Jt(8104, 8111),
7584
- ye(8124),
7585
- ye(8140),
7586
- ye(8188)
7590
+ _e(8124),
7591
+ _e(8140),
7592
+ _e(8188)
7587
7593
  ]), gc = /* @__PURE__ */ new Map([
7588
7594
  ["alnum", C`[\p{Alpha}\p{Nd}]`],
7589
7595
  ["alpha", C`\p{Alpha}`],
@@ -7607,12 +7613,12 @@ function bc(t, e) {
7607
7613
  n.push(a);
7608
7614
  return n;
7609
7615
  }
7610
- function ye(t) {
7616
+ function _e(t) {
7611
7617
  const e = U(t);
7612
7618
  return [e.toLowerCase(), e];
7613
7619
  }
7614
7620
  function Jt(t, e) {
7615
- return bc(t, e).map((n) => ye(n));
7621
+ return bc(t, e).map((n) => _e(n));
7616
7622
  }
7617
7623
  var kr = /* @__PURE__ */ new Set([
7618
7624
  "Lower",
@@ -7721,19 +7727,19 @@ var _c = {
7721
7727
  }
7722
7728
  }
7723
7729
  },
7724
- Assertion({ node: t, parent: e, key: n, container: a, root: r, remove: s, replaceWith: o }, l) {
7725
- const { kind: i, negate: c } = t, { asciiWordBoundaries: u, avoidSubclass: p, supportedGNodes: d, wordIsAscii: f } = l;
7726
- if (i === "text_segment_boundary")
7730
+ Assertion({ node: t, parent: e, key: n, container: a, root: r, remove: s, replaceWith: o }, i) {
7731
+ const { kind: l, negate: c } = t, { asciiWordBoundaries: u, avoidSubclass: p, supportedGNodes: d, wordIsAscii: f } = i;
7732
+ if (l === "text_segment_boundary")
7727
7733
  throw new Error(`Unsupported text segment boundary "\\${c ? "Y" : "y"}"`);
7728
- if (i === "line_end")
7734
+ if (l === "line_end")
7729
7735
  o(G(Se({ body: [
7730
7736
  Be({ body: [mn("string_end")] }),
7731
7737
  Be({ body: [Bt(10)] })
7732
7738
  // `\n`
7733
7739
  ] }), e));
7734
- else if (i === "line_start")
7740
+ else if (l === "line_start")
7735
7741
  o(G(de(C`(?<=\A|\n(?!\z))`, { skipLookbehindValidation: !0 }), e));
7736
- else if (i === "search_start")
7742
+ else if (l === "search_start")
7737
7743
  if (d.has(t))
7738
7744
  r.flags.sticky = !0, s();
7739
7745
  else {
@@ -7743,18 +7749,18 @@ var _c = {
7743
7749
  else {
7744
7750
  if (p)
7745
7751
  throw new Error(C`Uses "\G" in a way that requires a subclass`);
7746
- o(_e(mn("string_start"), e)), l.strategy = "clip_search";
7752
+ o($e(mn("string_start"), e)), i.strategy = "clip_search";
7747
7753
  }
7748
7754
  }
7749
- else if (!(i === "string_end" || i === "string_start")) if (i === "string_end_newline")
7755
+ else if (!(l === "string_end" || l === "string_start")) if (l === "string_end_newline")
7750
7756
  o(G(de(C`(?=\n?\z)`), e));
7751
- else if (i === "word_boundary") {
7757
+ else if (l === "word_boundary") {
7752
7758
  if (!f && !u) {
7753
7759
  const m = `(?:(?<=${pe})(?!${pe})|(?<!${pe})(?=${pe}))`, _ = `(?:(?<=${pe})(?=${pe})|(?<!${pe})(?!${pe}))`;
7754
7760
  o(G(de(c ? _ : m), e));
7755
7761
  }
7756
7762
  } else
7757
- throw new Error(`Unexpected assertion kind "${i}"`);
7763
+ throw new Error(`Unexpected assertion kind "${l}"`);
7758
7764
  },
7759
7765
  Backreference({ node: t }, { jsGroupNameMap: e }) {
7760
7766
  let { ref: n } = t;
@@ -7770,25 +7776,25 @@ var _c = {
7770
7776
  n(G(a, e), { traverse: !0 });
7771
7777
  }
7772
7778
  },
7773
- CharacterSet({ node: t, parent: e, replaceWith: n }, { accuracy: a, minTargetEs2024: r, digitIsAscii: s, spaceIsAscii: o, wordIsAscii: l }) {
7774
- const { kind: i, negate: c, value: u } = t;
7775
- if (s && (i === "digit" || u === "digit")) {
7776
- n(_e(hn("digit", { negate: c }), e));
7779
+ CharacterSet({ node: t, parent: e, replaceWith: n }, { accuracy: a, minTargetEs2024: r, digitIsAscii: s, spaceIsAscii: o, wordIsAscii: i }) {
7780
+ const { kind: l, negate: c, value: u } = t;
7781
+ if (s && (l === "digit" || u === "digit")) {
7782
+ n($e(hn("digit", { negate: c }), e));
7777
7783
  return;
7778
7784
  }
7779
- if (o && (i === "space" || u === "space")) {
7785
+ if (o && (l === "space" || u === "space")) {
7780
7786
  n(G(en(de(pc), c), e));
7781
7787
  return;
7782
7788
  }
7783
- if (l && (i === "word" || u === "word")) {
7784
- n(_e(hn("word", { negate: c }), e));
7789
+ if (i && (l === "word" || u === "word")) {
7790
+ n($e(hn("word", { negate: c }), e));
7785
7791
  return;
7786
7792
  }
7787
- if (i === "any")
7788
- n(_e(Ge("Any"), e));
7789
- else if (i === "digit")
7790
- n(_e(Ge("Nd", { negate: c }), e));
7791
- else if (i !== "dot") if (i === "text_segment") {
7793
+ if (l === "any")
7794
+ n($e(Ge("Any"), e));
7795
+ else if (l === "digit")
7796
+ n($e(Ge("Nd", { negate: c }), e));
7797
+ else if (l !== "dot") if (l === "text_segment") {
7792
7798
  if (a === "strict")
7793
7799
  throw new Error(C`Use of "\X" requires non-strict accuracy`);
7794
7800
  const p = "\\p{Emoji}(?:\\p{EMod}|\\uFE0F\\u20E3?|[\\x{E0020}-\\x{E007E}]+\\x{E007F})?", d = C`\p{RI}{2}|${p}(?:\u200D${p})*`;
@@ -7798,14 +7804,14 @@ var _c = {
7798
7804
  // Allow JS property `RGI_Emoji` through
7799
7805
  { skipPropertyNameValidation: !0 }
7800
7806
  ), e));
7801
- } else if (i === "hex")
7802
- n(_e(Ge("AHex", { negate: c }), e));
7803
- else if (i === "newline")
7807
+ } else if (l === "hex")
7808
+ n($e(Ge("AHex", { negate: c }), e));
7809
+ else if (l === "newline")
7804
7810
  n(G(de(c ? `[^
7805
7811
  ]` : `(?>\r
7806
7812
  ?|[
7807
7813
  \v\f…\u2028\u2029])`), e));
7808
- else if (i === "posix")
7814
+ else if (l === "posix")
7809
7815
  if (!r && (u === "graph" || u === "print")) {
7810
7816
  if (a === "strict")
7811
7817
  throw new Error(`POSIX class "${u}" requires min target ES2024 or non-strict accuracy`);
@@ -7816,25 +7822,25 @@ var _c = {
7816
7822
  c && (p = `\0-${U(p.codePointAt(0) - 1)}${U(p.codePointAt(2) + 1)}-􏿿`), n(G(de(`[${p}]`), e));
7817
7823
  } else
7818
7824
  n(G(en(de(gc.get(u)), c), e));
7819
- else if (i === "property")
7825
+ else if (l === "property")
7820
7826
  Nn.has(Tt(u)) || (t.key = "sc");
7821
- else if (i === "space")
7822
- n(_e(Ge("space", { negate: c }), e));
7823
- else if (i === "word")
7827
+ else if (l === "space")
7828
+ n($e(Ge("space", { negate: c }), e));
7829
+ else if (l === "word")
7824
7830
  n(G(en(de(pe), c), e));
7825
7831
  else
7826
- throw new Error(`Unexpected character set kind "${i}"`);
7832
+ throw new Error(`Unexpected character set kind "${l}"`);
7827
7833
  },
7828
7834
  Directive({ node: t, parent: e, root: n, remove: a, replaceWith: r, removeAllPrevSiblings: s, removeAllNextSiblings: o }) {
7829
- const { kind: l, flags: i } = t;
7830
- if (l === "flags")
7831
- if (!i.enable && !i.disable)
7835
+ const { kind: i, flags: l } = t;
7836
+ if (i === "flags")
7837
+ if (!l.enable && !l.disable)
7832
7838
  a();
7833
7839
  else {
7834
- const c = oe({ flags: i });
7840
+ const c = oe({ flags: l });
7835
7841
  c.body[0].body = o(), r(G(c, e), { traverse: !0 });
7836
7842
  }
7837
- else if (l === "keep") {
7843
+ else if (i === "keep") {
7838
7844
  const c = n.body[0], p = n.body.length === 1 && // Not emulatable if within a `CapturingGroup`
7839
7845
  pr(c, { type: "Group" }) && c.body[0].body.length === 1 ? c.body[0] : n;
7840
7846
  if (e.parent !== p || p.body.length > 1)
@@ -7842,7 +7848,7 @@ var _c = {
7842
7848
  const d = Se({ behind: !0 });
7843
7849
  d.body[0].body = s(), r(G(d, e));
7844
7850
  } else
7845
- throw new Error(`Unexpected directive kind "${l}"`);
7851
+ throw new Error(`Unexpected directive kind "${i}"`);
7846
7852
  },
7847
7853
  Flags({ node: t, parent: e }) {
7848
7854
  if (t.posixIsAscii)
@@ -7952,16 +7958,16 @@ var _c = {
7952
7958
  groupOriginByCopy: r,
7953
7959
  groupsByName: s,
7954
7960
  multiplexCapturesToLeftByRef: o,
7955
- openRefs: l,
7956
- reffedNodesByReferencer: i
7961
+ openRefs: i,
7962
+ reffedNodesByReferencer: l
7957
7963
  }) {
7958
7964
  const c = r.get(t);
7959
- if (c && l.has(t.number)) {
7960
- const p = _e(ya(t.number), e);
7961
- i.set(p, l.get(t.number)), n(p);
7965
+ if (c && i.has(t.number)) {
7966
+ const p = $e(ya(t.number), e);
7967
+ l.set(p, i.get(t.number)), n(p);
7962
7968
  return;
7963
7969
  }
7964
- l.set(t.number, t), o.set(t.number, []), t.name && at(o, t.name, []);
7970
+ i.set(t.number, t), o.set(t.number, []), t.name && at(o, t.name, []);
7965
7971
  const u = o.get(t.name ?? t.number);
7966
7972
  for (let p = 0; p < u.length; p++) {
7967
7973
  const d = u[p];
@@ -8011,21 +8017,21 @@ var _c = {
8011
8017
  a.reffedNodesByReferencer.set(t, u);
8012
8018
  return;
8013
8019
  }
8014
- const o = a.subroutineRefMap.get(s), l = s === 0, i = l ? ya(0) : (
8020
+ const o = a.subroutineRefMap.get(s), i = s === 0, l = i ? ya(0) : (
8015
8021
  // The reffed group might itself contain subroutines, which are expanded during sub-traversal
8016
8022
  Cr(o, a.groupOriginByCopy, null)
8017
8023
  );
8018
- let c = i;
8019
- if (!l) {
8024
+ let c = l;
8025
+ if (!i) {
8020
8026
  const u = xr(Cc(
8021
8027
  o,
8022
8028
  (d) => d.type === "Group" && !!d.flags
8023
8029
  )), p = u ? It(a.globalFlags, u) : a.globalFlags;
8024
8030
  kc(p, a.currentFlags) || (c = oe({
8025
8031
  flags: xc(p)
8026
- }), c.body[0].body.push(i));
8032
+ }), c.body[0].body.push(l));
8027
8033
  }
8028
- n(G(c, e), { traverse: !l });
8034
+ n(G(c, e), { traverse: !i });
8029
8035
  }
8030
8036
  }, wc = {
8031
8037
  Backreference({ node: t, parent: e, replaceWith: n }, a) {
@@ -8039,8 +8045,8 @@ var _c = {
8039
8045
  else if (s.length > 1) {
8040
8046
  const o = oe({
8041
8047
  atomic: !0,
8042
- body: s.reverse().map((l) => Be({
8043
- body: [fn(l.number)]
8048
+ body: s.reverse().map((i) => Be({
8049
+ body: [fn(i.number)]
8044
8050
  }))
8045
8051
  });
8046
8052
  n(G(o, e));
@@ -8196,7 +8202,7 @@ function de(t, e) {
8196
8202
  function en(t, e) {
8197
8203
  return t.negate = e, t;
8198
8204
  }
8199
- function _e(t, e) {
8205
+ function $e(t, e) {
8200
8206
  return t.parent = e, t;
8201
8207
  }
8202
8208
  function G(t, e) {
@@ -8206,7 +8212,7 @@ function Ic(t, e) {
8206
8212
  const n = $r(e), a = bn(n.target, "ES2024"), r = bn(n.target, "ES2025"), s = n.rules.recursionLimit;
8207
8213
  if (!Number.isInteger(s) || s < 2 || s > 20)
8208
8214
  throw new Error("Invalid recursionLimit; use 2-20");
8209
- let o = null, l = null;
8215
+ let o = null, i = null;
8210
8216
  if (!r) {
8211
8217
  const f = [t.flags.ignoreCase];
8212
8218
  Je(t, Rc, {
@@ -8218,22 +8224,22 @@ function Ic(t, e) {
8218
8224
  f.push(m);
8219
8225
  },
8220
8226
  setHasCasedChar() {
8221
- f.at(-1) ? o = !0 : l = !0;
8227
+ f.at(-1) ? o = !0 : i = !0;
8222
8228
  }
8223
8229
  });
8224
8230
  }
8225
- const i = {
8231
+ const l = {
8226
8232
  dotAll: t.flags.dotAll,
8227
8233
  // - Turn global flag i on if a case insensitive node was used and no case sensitive nodes were
8228
8234
  // used (to avoid unnecessary node expansion).
8229
8235
  // - Turn global flag i off if a case sensitive node was used (since case sensitivity can't be
8230
8236
  // forced without the use of ES2025 flag groups)
8231
- ignoreCase: !!((t.flags.ignoreCase || o) && !l)
8237
+ ignoreCase: !!((t.flags.ignoreCase || o) && !i)
8232
8238
  };
8233
8239
  let c = t;
8234
8240
  const u = {
8235
8241
  accuracy: n.accuracy,
8236
- appliedGlobalFlags: i,
8242
+ appliedGlobalFlags: l,
8237
8243
  captureMap: /* @__PURE__ */ new Map(),
8238
8244
  currentFlags: {
8239
8245
  dotAll: t.flags.dotAll,
@@ -8243,7 +8249,7 @@ function Ic(t, e) {
8243
8249
  lastNode: c,
8244
8250
  originMap: t._originMap,
8245
8251
  recursionLimit: s,
8246
- useAppliedIgnoreCase: !!(!r && o && l),
8252
+ useAppliedIgnoreCase: !!(!r && o && i),
8247
8253
  useFlagMods: r,
8248
8254
  useFlagV: a,
8249
8255
  verbose: n.verbose
@@ -8320,8 +8326,8 @@ var Rc = {
8320
8326
  @param {CapturingGroupNode} node
8321
8327
  */
8322
8328
  CapturingGroup(t, e, n) {
8323
- const { body: a, name: r, number: s } = t, o = { ignoreCase: e.currentFlags.ignoreCase }, l = e.originMap.get(t);
8324
- return l && (o.hidden = !0, s > l.number && (o.transferTo = l.number)), e.captureMap.set(s, o), `(${r ? `?<${r}>` : ""}${a.map(n).join("|")})`;
8329
+ const { body: a, name: r, number: s } = t, o = { ignoreCase: e.currentFlags.ignoreCase }, i = e.originMap.get(t);
8330
+ return i && (o.hidden = !0, s > i.number && (o.transferTo = i.number)), e.captureMap.set(s, o), `(${r ? `?<${r}>` : ""}${a.map(n).join("|")})`;
8325
8331
  },
8326
8332
  /**
8327
8333
  @param {CharacterNode} node
@@ -8348,12 +8354,12 @@ var Rc = {
8348
8354
  let { body: o } = t;
8349
8355
  if (a === "intersection" && !e.useFlagV)
8350
8356
  throw new Error("Use of class intersection requires min target ES2024");
8351
- ge.bugFlagVLiteralHyphenIsRange && e.useFlagV && o.some(wa) && (o = [Bt(45), ...o.filter((c) => !wa(c))]);
8352
- const l = () => `[${r ? "^" : ""}${o.map(n).join(a === "intersection" ? "&&" : "")}]`;
8357
+ be.bugFlagVLiteralHyphenIsRange && e.useFlagV && o.some(wa) && (o = [Bt(45), ...o.filter((c) => !wa(c))]);
8358
+ const i = () => `[${r ? "^" : ""}${o.map(n).join(a === "intersection" ? "&&" : "")}]`;
8353
8359
  if (!e.inCharClass) {
8354
8360
  if (
8355
8361
  // Already established `kind !== 'intersection'` if `!state.useFlagV`; don't check again
8356
- (!e.useFlagV || ge.bugNestedClassIgnoresNegation) && !r
8362
+ (!e.useFlagV || be.bugNestedClassIgnoresNegation) && !r
8357
8363
  ) {
8358
8364
  const u = o.filter(
8359
8365
  (p) => p.type === "CharacterClass" && p.kind === "union" && p.negate
@@ -8367,20 +8373,20 @@ var Rc = {
8367
8373
  }
8368
8374
  }
8369
8375
  e.inCharClass = !0;
8370
- const c = l();
8376
+ const c = i();
8371
8377
  return e.inCharClass = !1, c;
8372
8378
  }
8373
- const i = o[0];
8379
+ const l = o[0];
8374
8380
  if (
8375
8381
  // Already established that the parent is a char class via `inCharClass`; don't check again
8376
- a === "union" && !r && i && // Allows many nested classes to work with `target` ES2018 which doesn't support nesting
8377
- ((!e.useFlagV || !e.verbose) && s.kind === "union" && !(ge.bugFlagVLiteralHyphenIsRange && e.useFlagV) || !e.verbose && s.kind === "intersection" && // JS doesn't allow intersection with union or ranges
8378
- o.length === 1 && i.type !== "CharacterClassRange")
8382
+ a === "union" && !r && l && // Allows many nested classes to work with `target` ES2018 which doesn't support nesting
8383
+ ((!e.useFlagV || !e.verbose) && s.kind === "union" && !(be.bugFlagVLiteralHyphenIsRange && e.useFlagV) || !e.verbose && s.kind === "intersection" && // JS doesn't allow intersection with union or ranges
8384
+ o.length === 1 && l.type !== "CharacterClassRange")
8379
8385
  )
8380
8386
  return o.map(n).join("");
8381
8387
  if (!e.useFlagV && s.type === "CharacterClass")
8382
8388
  throw new Error("Use of nested character class requires min target ES2024");
8383
- return l();
8389
+ return i();
8384
8390
  },
8385
8391
  /**
8386
8392
  @param {CharacterClassRangeNode} node
@@ -8390,16 +8396,16 @@ var Rc = {
8390
8396
  escDigit: !1,
8391
8397
  inCharClass: !0,
8392
8398
  useFlagV: e.useFlagV
8393
- }, s = Me(n, r), o = Me(a, r), l = /* @__PURE__ */ new Set();
8399
+ }, s = Me(n, r), o = Me(a, r), i = /* @__PURE__ */ new Set();
8394
8400
  if (e.useAppliedIgnoreCase && e.currentFlags.ignoreCase) {
8395
- const i = Ir(t);
8396
- jc(i).forEach((u) => {
8397
- l.add(
8401
+ const l = Ir(t);
8402
+ jc(l).forEach((u) => {
8403
+ i.add(
8398
8404
  Array.isArray(u) ? `${Me(u[0], r)}-${Me(u[1], r)}` : Me(u, r)
8399
8405
  );
8400
8406
  });
8401
8407
  }
8402
- return `${s}-${o}${[...l].join("")}`;
8408
+ return `${s}-${o}${[...i].join("")}`;
8403
8409
  },
8404
8410
  /**
8405
8411
  @param {CharacterSetNode} node
@@ -8440,9 +8446,9 @@ var Rc = {
8440
8446
  Group({ atomic: t, body: e, flags: n, parent: a }, r, s) {
8441
8447
  const o = r.currentFlags;
8442
8448
  n && (r.currentFlags = It(o, n));
8443
- const l = e.map(s).join("|"), i = !r.verbose && e.length === 1 && // Single alt
8444
- a.type !== "Quantifier" && !t && (!r.useFlagMods || !n) ? l : `(?${Mc(t, n, r.useFlagMods)}${l})`;
8445
- return r.currentFlags = o, i;
8449
+ const i = e.map(s).join("|"), l = !r.verbose && e.length === 1 && // Single alt
8450
+ a.type !== "Quantifier" && !t && (!r.useFlagMods || !n) ? i : `(?${Mc(t, n, r.useFlagMods)}${i})`;
8451
+ return r.currentFlags = o, l;
8446
8452
  },
8447
8453
  /**
8448
8454
  @param {LookaroundAssertionNode} node
@@ -8545,14 +8551,14 @@ function Ir(t, e) {
8545
8551
  if (a < 65 && (r === 65535 || r >= 131071) || a === 65536 && r >= 131071)
8546
8552
  return s;
8547
8553
  for (let o = a; o <= r; o++) {
8548
- const l = U(o);
8549
- if (!Pn(l))
8554
+ const i = U(o);
8555
+ if (!Pn(i))
8550
8556
  continue;
8551
- const i = wr(l).filter((c) => {
8557
+ const l = wr(i).filter((c) => {
8552
8558
  const u = c.codePointAt(0);
8553
8559
  return u < a || u > r;
8554
8560
  });
8555
- if (i.length && (s.push(...i), n))
8561
+ if (l.length && (s.push(...l), n))
8556
8562
  break;
8557
8563
  }
8558
8564
  return s;
@@ -8604,7 +8610,7 @@ function Gc(t) {
8604
8610
  function wa({ type: t, value: e }) {
8605
8611
  return t === "Character" && e === 45;
8606
8612
  }
8607
- var we, me, Ne, ke, Pe, rt, yn, ve, Fc = (ve = class extends RegExp {
8613
+ var we, fe, Ne, ke, Pe, rt, yn, ve, Fc = (ve = class extends RegExp {
8608
8614
  /**
8609
8615
  @overload
8610
8616
  @param {string} pattern
@@ -8626,7 +8632,7 @@ var we, me, Ne, ke, Pe, rt, yn, ve, Fc = (ve = class extends RegExp {
8626
8632
  Ce(this, we, /* @__PURE__ */ new Map()), /**
8627
8633
  @type {RegExp | EmulatedRegExp | null}
8628
8634
  */
8629
- Ce(this, me, null), /**
8635
+ Ce(this, fe, null), /**
8630
8636
  @type {string}
8631
8637
  */
8632
8638
  Ce(this, Ne), /**
@@ -8645,7 +8651,7 @@ var we, me, Ne, ke, Pe, rt, yn, ve, Fc = (ve = class extends RegExp {
8645
8651
  if (r)
8646
8652
  throw new Error("Cannot provide options when copying a regexp");
8647
8653
  const o = n;
8648
- e(o, a), re(this, Ne, o.source), o instanceof ve && (re(this, we, K(o, we)), re(this, ke, K(o, ke)), re(this, Pe, K(o, Pe)), this.rawOptions = o.rawOptions);
8654
+ e(o, a), se(this, Ne, o.source), o instanceof ve && (se(this, we, K(o, we)), se(this, ke, K(o, ke)), se(this, Pe, K(o, Pe)), this.rawOptions = o.rawOptions);
8649
8655
  } else {
8650
8656
  const o = {
8651
8657
  hiddenCaptures: [],
@@ -8653,9 +8659,9 @@ var we, me, Ne, ke, Pe, rt, yn, ve, Fc = (ve = class extends RegExp {
8653
8659
  transfers: [],
8654
8660
  ...r
8655
8661
  };
8656
- e(s ? "" : n, a), re(this, Ne, n), re(this, we, Uc(o.hiddenCaptures, o.transfers)), re(this, Pe, o.strategy), this.rawOptions = r ?? {};
8662
+ e(s ? "" : n, a), se(this, Ne, n), se(this, we, Uc(o.hiddenCaptures, o.transfers)), se(this, Pe, o.strategy), this.rawOptions = r ?? {};
8657
8663
  }
8658
- s || re(this, me, this);
8664
+ s || se(this, fe, this);
8659
8665
  }
8660
8666
  // Override the getter with one that works with lazy-compiled regexes
8661
8667
  get source() {
@@ -8668,9 +8674,9 @@ var we, me, Ne, ke, Pe, rt, yn, ve, Fc = (ve = class extends RegExp {
8668
8674
  @returns {RegExpExecArray?}
8669
8675
  */
8670
8676
  exec(n) {
8671
- if (!K(this, me)) {
8677
+ if (!K(this, fe)) {
8672
8678
  const { lazyCompile: s, ...o } = this.rawOptions;
8673
- re(this, me, new ve(K(this, Ne), this.flags, o));
8679
+ se(this, fe, new ve(K(this, Ne), this.flags, o));
8674
8680
  }
8675
8681
  const a = this.global || this.sticky, r = this.lastIndex;
8676
8682
  if (K(this, Pe) === "clip_search" && a && r) {
@@ -8680,31 +8686,31 @@ var we, me, Ne, ke, Pe, rt, yn, ve, Fc = (ve = class extends RegExp {
8680
8686
  }
8681
8687
  return Ot(this, rt, yn).call(this, n);
8682
8688
  }
8683
- }, we = new WeakMap(), me = new WeakMap(), Ne = new WeakMap(), ke = new WeakMap(), Pe = new WeakMap(), rt = new WeakSet(), /**
8689
+ }, we = new WeakMap(), fe = new WeakMap(), Ne = new WeakMap(), ke = new WeakMap(), Pe = new WeakMap(), rt = new WeakSet(), /**
8684
8690
  Adds support for hidden and transfer captures.
8685
8691
  @param {string} str
8686
8692
  @returns
8687
8693
  */
8688
8694
  yn = function(n) {
8689
- K(this, me).lastIndex = this.lastIndex;
8690
- const a = Ln(ve.prototype, this, "exec").call(K(this, me), n);
8691
- if (this.lastIndex = K(this, me).lastIndex, !a || !K(this, we).size)
8695
+ K(this, fe).lastIndex = this.lastIndex;
8696
+ const a = Ln(ve.prototype, this, "exec").call(K(this, fe), n);
8697
+ if (this.lastIndex = K(this, fe).lastIndex, !a || !K(this, we).size)
8692
8698
  return a;
8693
8699
  const r = [...a];
8694
8700
  a.length = 1;
8695
8701
  let s;
8696
8702
  this.hasIndices && (s = [...a.indices], a.indices.length = 1);
8697
8703
  const o = [0];
8698
- for (let l = 1; l < r.length; l++) {
8699
- const { hidden: i, transferTo: c } = K(this, we).get(l) ?? {};
8700
- if (i ? o.push(null) : (o.push(a.length), a.push(r[l]), this.hasIndices && a.indices.push(s[l])), c && r[l] !== void 0) {
8704
+ for (let i = 1; i < r.length; i++) {
8705
+ const { hidden: l, transferTo: c } = K(this, we).get(i) ?? {};
8706
+ if (l ? o.push(null) : (o.push(a.length), a.push(r[i]), this.hasIndices && a.indices.push(s[i])), c && r[i] !== void 0) {
8701
8707
  const u = o[c];
8702
8708
  if (!u)
8703
8709
  throw new Error(`Invalid capture transfer to "${u}"`);
8704
- if (a[u] = r[l], this.hasIndices && (a.indices[u] = s[l]), a.groups) {
8705
- K(this, ke) || re(this, ke, zc(this.source));
8710
+ if (a[u] = r[i], this.hasIndices && (a.indices[u] = s[i]), a.groups) {
8711
+ K(this, ke) || se(this, ke, zc(this.source));
8706
8712
  const p = K(this, ke).get(c);
8707
- p && (a.groups[p] = r[l], this.hasIndices && (a.indices.groups[p] = s[l]));
8713
+ p && (a.groups[p] = r[i], this.hasIndices && (a.indices.groups[p] = s[i]));
8708
8714
  }
8709
8715
  }
8710
8716
  }
@@ -8714,13 +8720,13 @@ function Dc(t, e, n, a) {
8714
8720
  if (t.index += e, t.input = n, a) {
8715
8721
  const r = t.indices;
8716
8722
  for (let o = 0; o < r.length; o++) {
8717
- const l = r[o];
8718
- l && (r[o] = [l[0] + e, l[1] + e]);
8723
+ const i = r[o];
8724
+ i && (r[o] = [i[0] + e, i[1] + e]);
8719
8725
  }
8720
8726
  const s = r.groups;
8721
8727
  s && Object.keys(s).forEach((o) => {
8722
- const l = s[o];
8723
- l && (s[o] = [l[0] + e, l[1] + e]);
8728
+ const i = s[o];
8729
+ i && (s[o] = [i[0] + e, i[1] + e]);
8724
8730
  });
8725
8731
  }
8726
8732
  }
@@ -8739,16 +8745,16 @@ function zc(t) {
8739
8745
  const e = /(?<capture>\((?:\?<(?![=!])(?<name>[^>]+)>|(?!\?)))|\\?./gsu, n = /* @__PURE__ */ new Map();
8740
8746
  let a = 0, r = 0, s;
8741
8747
  for (; s = e.exec(t); ) {
8742
- const { 0: o, groups: { capture: l, name: i } } = s;
8743
- o === "[" ? a++ : a ? o === "]" && a-- : l && (r++, i && n.set(r, i));
8748
+ const { 0: o, groups: { capture: i, name: l } } = s;
8749
+ o === "[" ? a++ : a ? o === "]" && a-- : i && (r++, l && n.set(r, l));
8744
8750
  }
8745
8751
  return n;
8746
8752
  }
8747
8753
  function qc(t, e) {
8748
- const n = Wc(t, e);
8754
+ const n = Hc(t, e);
8749
8755
  return n.options ? new Fc(n.pattern, n.flags, n.options) : new RegExp(n.pattern, n.flags);
8750
8756
  }
8751
- function Wc(t, e) {
8757
+ function Hc(t, e) {
8752
8758
  const n = $r(e), a = dr(t, {
8753
8759
  flags: n.flags,
8754
8760
  normalizeUnknownPropertyNames: !0,
@@ -8767,18 +8773,18 @@ function Wc(t, e) {
8767
8773
  captureTransfers: s._captureTransfers,
8768
8774
  hiddenCaptures: s._hiddenCaptures,
8769
8775
  mode: "external"
8770
- }), l = sc(o.pattern), i = rc(l.pattern, {
8776
+ }), i = sc(o.pattern), l = rc(i.pattern, {
8771
8777
  captureTransfers: o.captureTransfers,
8772
8778
  hiddenCaptures: o.hiddenCaptures
8773
8779
  }), c = {
8774
- pattern: i.pattern,
8780
+ pattern: l.pattern,
8775
8781
  flags: `${n.hasIndices ? "d" : ""}${n.global ? "g" : ""}${s.flags}${s.options.disable.v ? "u" : "v"}`
8776
8782
  };
8777
8783
  if (n.avoidSubclass) {
8778
8784
  if (n.lazyCompileLength !== 1 / 0)
8779
8785
  throw new Error("Lazy compilation requires subclass");
8780
8786
  } else {
8781
- const u = i.hiddenCaptures.sort((m, _) => m - _), p = Array.from(i.captureTransfers), d = r._strategy, f = c.pattern.length >= n.lazyCompileLength;
8787
+ const u = l.hiddenCaptures.sort((m, _) => m - _), p = Array.from(l.captureTransfers), d = r._strategy, f = c.pattern.length >= n.lazyCompileLength;
8782
8788
  (u.length || p.length || d || f) && (c.options = {
8783
8789
  ...u.length && { hiddenCaptures: u },
8784
8790
  ...p.length && { transfers: p },
@@ -8789,7 +8795,7 @@ function Wc(t, e) {
8789
8795
  return c;
8790
8796
  }
8791
8797
  const ka = 4294967295;
8792
- class Hc {
8798
+ class Wc {
8793
8799
  constructor(e, n = {}) {
8794
8800
  h(this, "regexps");
8795
8801
  this.patterns = e, this.options = n;
@@ -8803,30 +8809,30 @@ class Hc {
8803
8809
  this.regexps = e.map((o) => {
8804
8810
  if (typeof o != "string")
8805
8811
  return o;
8806
- const l = r == null ? void 0 : r.get(o);
8807
- if (l) {
8808
- if (l instanceof RegExp)
8809
- return l;
8812
+ const i = r == null ? void 0 : r.get(o);
8813
+ if (i) {
8814
+ if (i instanceof RegExp)
8815
+ return i;
8810
8816
  if (a)
8811
8817
  return null;
8812
- throw l;
8818
+ throw i;
8813
8819
  }
8814
8820
  try {
8815
- const i = s(o);
8816
- return r == null || r.set(o, i), i;
8817
- } catch (i) {
8818
- if (r == null || r.set(o, i), a)
8821
+ const l = s(o);
8822
+ return r == null || r.set(o, l), l;
8823
+ } catch (l) {
8824
+ if (r == null || r.set(o, l), a)
8819
8825
  return null;
8820
- throw i;
8826
+ throw l;
8821
8827
  }
8822
8828
  });
8823
8829
  }
8824
8830
  findNextMatchSync(e, n, a) {
8825
8831
  const r = typeof e == "string" ? e : e.content, s = [];
8826
- function o(l, i, c = 0) {
8832
+ function o(i, l, c = 0) {
8827
8833
  return {
8828
- index: l,
8829
- captureIndices: i.indices.map((u) => u == null ? {
8834
+ index: i,
8835
+ captureIndices: l.indices.map((u) => u == null ? {
8830
8836
  start: ka,
8831
8837
  end: ka,
8832
8838
  length: 0
@@ -8837,17 +8843,17 @@ class Hc {
8837
8843
  })
8838
8844
  };
8839
8845
  }
8840
- for (let l = 0; l < this.regexps.length; l++) {
8841
- const i = this.regexps[l];
8842
- if (i)
8846
+ for (let i = 0; i < this.regexps.length; i++) {
8847
+ const l = this.regexps[i];
8848
+ if (l)
8843
8849
  try {
8844
- i.lastIndex = n;
8845
- const c = i.exec(r);
8850
+ l.lastIndex = n;
8851
+ const c = l.exec(r);
8846
8852
  if (!c)
8847
8853
  continue;
8848
8854
  if (c.index === n)
8849
- return o(l, c, 0);
8850
- s.push([l, c, 0]);
8855
+ return o(i, c, 0);
8856
+ s.push([i, c, 0]);
8851
8857
  } catch (c) {
8852
8858
  if (this.options.forgiving)
8853
8859
  continue;
@@ -8855,10 +8861,10 @@ class Hc {
8855
8861
  }
8856
8862
  }
8857
8863
  if (s.length) {
8858
- const l = Math.min(...s.map((i) => i[1].index));
8859
- for (const [i, c, u] of s)
8860
- if (c.index === l)
8861
- return o(i, c, u);
8864
+ const i = Math.min(...s.map((l) => l[1].index));
8865
+ for (const [l, c, u] of s)
8866
+ if (c.index === i)
8867
+ return o(l, c, u);
8862
8868
  }
8863
8869
  return null;
8864
8870
  }
@@ -8900,7 +8906,7 @@ function Xc(t = {}) {
8900
8906
  );
8901
8907
  return e.regexConstructor || (e.regexConstructor = (n) => Vc(n, { target: e.target })), {
8902
8908
  createScanner(n) {
8903
- return new Hc(n, e);
8909
+ return new Wc(n, e);
8904
8910
  },
8905
8911
  createString(n) {
8906
8912
  return {
@@ -8948,14 +8954,14 @@ const Zc = { class: "relative float-left min-w-full" }, Kc = ["innerHTML"], Jc =
8948
8954
  }
8949
8955
  })();
8950
8956
  const s = L(), o = L();
8951
- function l() {
8957
+ function i() {
8952
8958
  if (!o.value || !s.value) return;
8953
8959
  const c = o.value.children[0];
8954
8960
  c && (c.scrollLeft = s.value.scrollLeft);
8955
8961
  }
8956
- function i() {
8962
+ function l() {
8957
8963
  Fr().then(() => {
8958
- l();
8964
+ i();
8959
8965
  });
8960
8966
  }
8961
8967
  return (c, u) => (M(), J("div", {
@@ -8978,8 +8984,8 @@ const Zc = { class: "relative float-left min-w-full" }, Kc = ["innerHTML"], Jc =
8978
8984
  autocorrect: "off",
8979
8985
  autocapitalize: "off",
8980
8986
  spellcheck: "false",
8981
- onInput: i,
8982
- onScroll: l
8987
+ onInput: l,
8988
+ onScroll: i
8983
8989
  }, null, 544), [
8984
8990
  [Gr, e.value]
8985
8991
  ])
@@ -9001,7 +9007,7 @@ const Zc = { class: "relative float-left min-w-full" }, Kc = ["innerHTML"], Jc =
9001
9007
  }`);
9002
9008
  }), (n, a) => (M(), J("div", Qc, [
9003
9009
  N("div", Yc, [
9004
- S(Ur(Jc), {
9010
+ E(Ur(Jc), {
9005
9011
  modelValue: e.value,
9006
9012
  "onUpdate:modelValue": a[0] || (a[0] = (r) => e.value = r)
9007
9013
  }, null, 8, ["modelValue"])
@@ -9014,8 +9020,8 @@ function lu(t, e) {
9014
9020
  return e;
9015
9021
  try {
9016
9022
  let n = t;
9017
- const a = "function transformData(data) {", r = "}";
9018
- return n.startsWith(a) && n.endsWith(r) && (n = n.substring(a.length, n.length - r.length).trim()), new Function("data", n)(e);
9023
+ const a = "function transformData(data) {", r = "}", s = n.trim(), o = s.indexOf(a), i = s.lastIndexOf(r);
9024
+ return o !== -1 && i !== -1 && i > o + a.length && (n = s.substring(o + a.length, i).trim()), new Function("data", n)(e);
9019
9025
  } catch (n) {
9020
9026
  return console.error("执行数据转换函数失败:", n), e;
9021
9027
  }
@@ -9025,8 +9031,8 @@ function cu(t) {
9025
9031
  return !1;
9026
9032
  try {
9027
9033
  let e = t;
9028
- const n = "function transformData(data) {", a = "}";
9029
- return e.startsWith(n) && e.endsWith(a) && (e = e.substring(n.length, e.length - a.length).trim()), new Function("data", e), !0;
9034
+ const n = "function transformData(data) {", a = "}", r = e.trim(), s = r.indexOf(n), o = r.lastIndexOf(a);
9035
+ return s !== -1 && o !== -1 && o > s + n.length && (e = r.substring(s + n.length, o).trim()), new Function("data", e), !0;
9030
9036
  } catch (e) {
9031
9037
  return console.error("数据转换函数无效:", e), !1;
9032
9038
  }