podlite 0.0.57 → 0.0.58

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.
Files changed (72) hide show
  1. package/CHANGELOG.podlite +14 -0
  2. package/esm/cli.js +31 -5
  3. package/esm/cli.js.map +1 -1
  4. package/esm/index.js +10 -2
  5. package/esm/index.js.map +1 -1
  6. package/esm/lint/formatters/json.d.ts +9 -0
  7. package/esm/lint/formatters/json.js +5 -0
  8. package/esm/lint/formatters/json.js.map +1 -0
  9. package/esm/lint/formatters/text.d.ts +9 -0
  10. package/esm/lint/formatters/text.js +41 -0
  11. package/esm/lint/formatters/text.js.map +1 -0
  12. package/esm/lint/grammar/lint.d.ts +14 -0
  13. package/esm/lint/grammar/lint.js +910 -0
  14. package/esm/lint/grammar/lint.js.map +1 -0
  15. package/esm/lint/grammar/scan.d.ts +9 -0
  16. package/esm/lint/grammar/scan.js +36 -0
  17. package/esm/lint/grammar/scan.js.map +1 -0
  18. package/esm/lint/index.d.ts +7 -1
  19. package/esm/lint/index.js +45 -10
  20. package/esm/lint/index.js.map +1 -1
  21. package/esm/lint/loader.d.ts +5 -0
  22. package/esm/lint/loader.js +19 -0
  23. package/esm/lint/loader.js.map +1 -0
  24. package/esm/lint/rules/heading-hierarchy.d.ts +3 -0
  25. package/esm/lint/rules/heading-hierarchy.js +27 -0
  26. package/esm/lint/rules/heading-hierarchy.js.map +1 -0
  27. package/esm/lint/rules/id-unique.d.ts +10 -0
  28. package/esm/lint/rules/id-unique.js +41 -0
  29. package/esm/lint/rules/id-unique.js.map +1 -0
  30. package/esm/lint/rules/index.d.ts +2 -0
  31. package/esm/lint/rules/index.js +4 -0
  32. package/esm/lint/rules/index.js.map +1 -0
  33. package/esm/lint/rules/syntax-valid.d.ts +4 -0
  34. package/esm/lint/rules/syntax-valid.js +30 -0
  35. package/esm/lint/rules/syntax-valid.js.map +1 -0
  36. package/esm/lint/types.d.ts +4 -0
  37. package/lib/cli.js +31 -5
  38. package/lib/cli.js.map +1 -1
  39. package/lib/index.js +10 -2
  40. package/lib/index.js.map +1 -1
  41. package/lib/lint/formatters/json.d.ts +9 -0
  42. package/lib/lint/formatters/json.js +9 -0
  43. package/lib/lint/formatters/json.js.map +1 -0
  44. package/lib/lint/formatters/text.d.ts +9 -0
  45. package/lib/lint/formatters/text.js +45 -0
  46. package/lib/lint/formatters/text.js.map +1 -0
  47. package/lib/lint/grammar/lint.d.ts +14 -0
  48. package/lib/lint/grammar/lint.js +910 -0
  49. package/lib/lint/grammar/lint.js.map +1 -0
  50. package/lib/lint/grammar/scan.d.ts +9 -0
  51. package/lib/lint/grammar/scan.js +40 -0
  52. package/lib/lint/grammar/scan.js.map +1 -0
  53. package/lib/lint/index.d.ts +7 -1
  54. package/lib/lint/index.js +45 -10
  55. package/lib/lint/index.js.map +1 -1
  56. package/lib/lint/loader.d.ts +5 -0
  57. package/lib/lint/loader.js +44 -0
  58. package/lib/lint/loader.js.map +1 -0
  59. package/lib/lint/rules/heading-hierarchy.d.ts +3 -0
  60. package/lib/lint/rules/heading-hierarchy.js +30 -0
  61. package/lib/lint/rules/heading-hierarchy.js.map +1 -0
  62. package/lib/lint/rules/id-unique.d.ts +10 -0
  63. package/lib/lint/rules/id-unique.js +45 -0
  64. package/lib/lint/rules/id-unique.js.map +1 -0
  65. package/lib/lint/rules/index.d.ts +2 -0
  66. package/lib/lint/rules/index.js +7 -0
  67. package/lib/lint/rules/index.js.map +1 -0
  68. package/lib/lint/rules/syntax-valid.d.ts +4 -0
  69. package/lib/lint/rules/syntax-valid.js +34 -0
  70. package/lib/lint/rules/syntax-valid.js.map +1 -0
  71. package/lib/lint/types.d.ts +4 -0
  72. package/package.json +11 -8
package/CHANGELOG.podlite CHANGED
@@ -2,6 +2,20 @@
2
2
 
3
3
  =head1 Upcoming
4
4
 
5
+ =head1 0.0.58
6
+
7
+ =item C<< podlite lint >> accepts C<--strict>, C<--format text|json>, C<--config <path>>. C<runLint(files, options)> signature in C<@podlite/core>
8
+ =item C<< podlite lint >> adds C<syntax-valid> rule — catches parse exceptions, reports C<file:line:column: error: <msg> (syntax-valid)>. Text and JSON output. Missing files report C<io> error
9
+ =item C<< podlite lint >> exit codes: 0 clean, 1 violations found (or warnings under C<--strict>), 2 CLI/setup error (no files, unknown C<--format>)
10
+ =item C<< podlite lint >> file loader centralized — auto-detects C<.md> → markdown mode (via C<parseMd> from C<@podlite/markdown>), C<.podlite>/C<.pod6> → pod mode. Both produce the unified AST so rules apply uniformly
11
+ =item C<< podlite lint >> adds C<heading-hierarchy> rule (warning) — flags non-monotonic level jumps like C<head1> → C<head3>. Descending and equal levels allowed. Applies to both Markdown and Podlite headings via unified AST
12
+ =item C<< podlite lint >> adds C<id-unique> rule (error) — flags duplicate explicit C<:id<>> attributes in file scope. Auto-generated node ids ignored. Silent skip when the file declares no explicit ids
13
+ =item C<< podlite lint >> output split into C<src/lint/formatters/{text,json}.ts> modules. Text format emits a trailing summary C<N files checked, M errors, K warnings> and colours C<error>/C<warning> tokens with native ANSI when stdout is a TTY. JSON format unchanged (array of diagnostic objects)
14
+ =item C<< podlite lint >> adds C<attr-nested-angle> rule (error) — flags angle-delimited attributes whose value contains a nested C<E<lt>...E<gt>> (formatting code or raw angle) before the closing C<E<gt>>, which silently closes the attribute early under PEG tolerance. Suggests multi-angle / guillemet / parenthesis / bracket delimiters. Source-level scan via Pegmill C<grammar-lint.pegjs>; runs before AST parse so the rule is independent of parser tolerance
15
+ =item C<podlite().parse(text, opt)> dispatches to C<md2ast> from C<@podlite/markdown> when C<opt.mode === 'md'>. Default and C<opt.mode === 'pod'> use the pod grammar unchanged. Enables a single parse front-door for full-document Markdown input across consumers (C<@podlite/to-jsx>, C<@podlite/to-html>, C<@podlite/publisher>, C<@podlite/editor-react>)
16
+ =item C<< podlite lint >> adds C<delimited-block-balance> rule (error) — flags orphan C<=end>, mismatched C<=begin>/C<=end> pairs, C<=begin X> nested inside C<=begin X> (verbatim trap), and C<=begin> blocks left unclosed at end of file. Source-level scan via the same Pegmill grammar that hosts C<attr-nested-angle>; stack tracked through C<options._blockStack>, EOF check flushes remaining items
17
+ =item C<< podlite lint >> adds C<attr-continuation-dropped> rule (warning) — flags indented C<:attr<…>> lines following C<=begin X>/C<=for X> that get silently dropped by the parser (queryable only on the directive line itself). State machine clears on blank line, content line, or C<=end>. Suggests flattening attributes onto the directive line
18
+
5
19
  =head1 0.0.55
6
20
 
7
21
  =item add C<< podlite query <selector> <files...> >> subcommand. Extracts blocks matching a selector. C<--to> selects C<podlite> (default, raw source), C<md>, C<html>, C<json>. C<--fail-on-empty> sets exit 1 on empty result. Match count on stderr unless C<--quiet>. Reads stdin when piped or when C<-> is given as a file argument
package/esm/cli.js CHANGED
@@ -9,10 +9,11 @@ const FORMATS = {
9
9
  html: '.html',
10
10
  };
11
11
  const QUERY_FORMATS = ['podlite', 'md', 'html', 'json'];
12
+ const LINT_FORMATS = ['text', 'json'];
12
13
  function usage() {
13
14
  console.log(`Usage:
14
15
  podlite convert <files...> --to <format> [-o <output>]
15
- podlite lint <files...>
16
+ podlite lint <files...> [--strict] [--format <text|json>] [--config <path>]
16
17
  podlite query <selector> <files...> [--to <format>] [--fail-on-empty] [--quiet]
17
18
 
18
19
  Commands:
@@ -24,6 +25,9 @@ Options:
24
25
  --to Output format
25
26
  convert: md (markdown), html
26
27
  query: podlite (default), md, html, json
28
+ --format lint output format: text (default), json
29
+ --strict lint: promote warnings to errors
30
+ --config lint: path to .podlitelintrc.{json,js}
27
31
  -o Output file or directory (default: same dir, new extension)
28
32
  --fail-on-empty query: exit 1 if no blocks matched
29
33
  --quiet query: suppress match count on stderr
@@ -38,7 +42,8 @@ Examples:
38
42
  podlite query '*[:applies-nfr~<N004>]' rules/*.podlite --fail-on-empty
39
43
  cat doc.podlite | podlite query 'head1'
40
44
  podlite query 'table' --to json - < report.podlite
41
- podlite lint docs/*.podlite`);
45
+ podlite lint docs/*.podlite
46
+ podlite lint docs/ --strict --format json`);
42
47
  }
43
48
  function parseArgs(argv) {
44
49
  const args = {
@@ -48,6 +53,9 @@ function parseArgs(argv) {
48
53
  output: '',
49
54
  failOnEmpty: false,
50
55
  quiet: false,
56
+ strict: false,
57
+ format: '',
58
+ configPath: '',
51
59
  };
52
60
  if (argv.length === 0 || argv[0] === '--help' || argv[0] === '-h') {
53
61
  return null;
@@ -68,6 +76,15 @@ function parseArgs(argv) {
68
76
  else if (arg === '--quiet') {
69
77
  args.quiet = true;
70
78
  }
79
+ else if (arg === '--strict') {
80
+ args.strict = true;
81
+ }
82
+ else if (arg === '--format') {
83
+ args.format = argv[++i] || '';
84
+ }
85
+ else if (arg === '--config') {
86
+ args.configPath = argv[++i] || '';
87
+ }
71
88
  else if (arg === '--help' || arg === '-h') {
72
89
  return null;
73
90
  }
@@ -193,11 +210,20 @@ function main() {
193
210
  }
194
211
  if (args.command === 'lint') {
195
212
  if (args.files.length === 0) {
196
- console.error('No input files specified');
213
+ console.error('podlite lint: no input files specified');
197
214
  usage();
198
- process.exit(1);
215
+ process.exit(2);
216
+ }
217
+ const format = (args.format || 'text');
218
+ if (!LINT_FORMATS.includes(format)) {
219
+ console.error(`podlite lint: unknown --format "${format}". Supported: ${LINT_FORMATS.join(', ')}`);
220
+ process.exit(2);
199
221
  }
200
- process.exit(runLint(args.files));
222
+ process.exit(runLint(args.files, {
223
+ strict: args.strict,
224
+ format,
225
+ configPath: args.configPath || undefined,
226
+ }));
201
227
  }
202
228
  if (args.command !== 'convert') {
203
229
  console.error(`Unknown command: ${args.command}`);
package/esm/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
package/esm/index.js CHANGED
@@ -1,8 +1,16 @@
1
1
  import { podlitePluggable } from '@podlite/schema';
2
+ import { parseMd } from '@podlite/markdown';
2
3
  import externalPlugins from './plugins/extrnal';
3
4
  export const podlite = ({ importPlugins = true }) => {
4
- let plugins = importPlugins ? externalPlugins : {};
5
- return podlitePluggable({ plugins });
5
+ const plugins = importPlugins ? externalPlugins : {};
6
+ const instance = podlitePluggable({ plugins });
7
+ const baseParse = instance.parse;
8
+ instance.parse = (text, opt = {}) => {
9
+ if (opt.mode === 'md')
10
+ return parseMd(text);
11
+ return baseParse(text, opt);
12
+ };
13
+ return instance;
6
14
  };
7
15
  // Cannot be `import` as it's not under TS root dir
8
16
  // https://stackoverflow.com/questions/51070138/how-to-import-package-json-into-typescript-file-without-including-it-in-the-comp
package/esm/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAW,MAAM,iBAAiB,CAAA;AAC3D,OAAO,eAAe,MAAM,mBAAmB,CAAA;AAK/C,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,EAAE,aAAa,GAAG,IAAI,EAAc,EAAW,EAAE;IACvE,IAAI,OAAO,GAAG,aAAa,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,CAAA;IAClD,OAAO,gBAAgB,CAAC,EAAE,OAAO,EAAE,CAAC,CAAA;AACtC,CAAC,CAAA;AAED,mDAAmD;AACnD,gIAAgI;AAEhI,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAA;AACvD,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAsC,MAAM,iBAAiB,CAAA;AACtF,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAC3C,OAAO,eAAe,MAAM,mBAAmB,CAAA;AAK/C,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,EAAE,aAAa,GAAG,IAAI,EAAc,EAAW,EAAE;IACvE,MAAM,OAAO,GAAG,aAAa,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,CAAA;IACpD,MAAM,QAAQ,GAAG,gBAAgB,CAAC,EAAE,OAAO,EAAE,CAAC,CAAA;IAC9C,MAAM,SAAS,GAAG,QAAQ,CAAC,KAAK,CAAA;IAChC,QAAQ,CAAC,KAAK,GAAG,CAAC,IAAY,EAAE,MAAgB,EAAE,EAAmB,EAAE;QACrE,IAAI,GAAG,CAAC,IAAI,KAAK,IAAI;YAAE,OAAO,OAAO,CAAC,IAAI,CAA+B,CAAA;QACzE,OAAO,SAAS,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;IAC7B,CAAC,CAAA;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC,CAAA;AAED,mDAAmD;AACnD,gIAAgI;AAEhI,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAA;AACvD,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,CAAA"}
@@ -0,0 +1,9 @@
1
+ import type { Violation } from '../types';
2
+ export declare type FileReport = {
3
+ filePath: string;
4
+ violations: Violation[];
5
+ };
6
+ export declare type JsonDiagnostic = Violation & {
7
+ file: string;
8
+ };
9
+ export declare function formatJson(reports: FileReport[]): string;
@@ -0,0 +1,5 @@
1
+ export function formatJson(reports) {
2
+ const payload = reports.flatMap(r => r.violations.map(v => ({ file: r.filePath, ...v })));
3
+ return JSON.stringify(payload, null, 2) + '\n';
4
+ }
5
+ //# sourceMappingURL=json.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"json.js","sourceRoot":"","sources":["../../../src/lint/formatters/json.ts"],"names":[],"mappings":"AAMA,MAAM,UAAU,UAAU,CAAC,OAAqB;IAC9C,MAAM,OAAO,GAAqB,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IAC3G,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAA;AAChD,CAAC"}
@@ -0,0 +1,9 @@
1
+ import type { Violation } from '../types';
2
+ export declare type FileReport = {
3
+ filePath: string;
4
+ violations: Violation[];
5
+ };
6
+ export declare type TextFormatOptions = {
7
+ color: boolean;
8
+ };
9
+ export declare function formatText(reports: FileReport[], opts: TextFormatOptions): string;
@@ -0,0 +1,41 @@
1
+ const ANSI = {
2
+ red: '\x1b[31m',
3
+ yellow: '\x1b[33m',
4
+ cyan: '\x1b[36m',
5
+ reset: '\x1b[0m',
6
+ };
7
+ function colourize(severity, color) {
8
+ if (!color)
9
+ return severity;
10
+ if (severity === 'error')
11
+ return `${ANSI.red}${severity}${ANSI.reset}`;
12
+ if (severity === 'warning')
13
+ return `${ANSI.yellow}${severity}${ANSI.reset}`;
14
+ return `${ANSI.cyan}${severity}${ANSI.reset}`;
15
+ }
16
+ function plural(n, singular, plural) {
17
+ return `${n} ${n === 1 ? singular : plural}`;
18
+ }
19
+ function summaryLine(reports) {
20
+ const totals = reports.flatMap(r => r.violations);
21
+ const nFiles = reports.length;
22
+ const nErrors = totals.filter(v => v.severity === 'error').length;
23
+ const nWarnings = totals.filter(v => v.severity === 'warning').length;
24
+ return `${plural(nFiles, 'file', 'files')} checked, ${plural(nErrors, 'error', 'errors')}, ${plural(nWarnings, 'warning', 'warnings')}`;
25
+ }
26
+ export function formatText(reports, opts) {
27
+ const lines = [];
28
+ for (const r of reports) {
29
+ for (const v of r.violations) {
30
+ const line = v.location?.start?.line ?? 1;
31
+ const column = v.location?.start?.column ?? 1;
32
+ lines.push(`${r.filePath}:${line}:${column}: ${colourize(v.severity, opts.color)}: ${v.message} (${v.rule})`);
33
+ }
34
+ }
35
+ if (reports.length === 0)
36
+ return '';
37
+ if (lines.length === 0)
38
+ return `${summaryLine(reports)}\n`;
39
+ return `${lines.join('\n')}\n\n${summaryLine(reports)}\n`;
40
+ }
41
+ //# sourceMappingURL=text.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text.js","sourceRoot":"","sources":["../../../src/lint/formatters/text.ts"],"names":[],"mappings":"AAMA,MAAM,IAAI,GAAG;IACX,GAAG,EAAE,UAAU;IACf,MAAM,EAAE,UAAU;IAClB,IAAI,EAAE,UAAU;IAChB,KAAK,EAAE,SAAS;CACjB,CAAA;AAED,SAAS,SAAS,CAAC,QAAkB,EAAE,KAAc;IACnD,IAAI,CAAC,KAAK;QAAE,OAAO,QAAQ,CAAA;IAC3B,IAAI,QAAQ,KAAK,OAAO;QAAE,OAAO,GAAG,IAAI,CAAC,GAAG,GAAG,QAAQ,GAAG,IAAI,CAAC,KAAK,EAAE,CAAA;IACtE,IAAI,QAAQ,KAAK,SAAS;QAAE,OAAO,GAAG,IAAI,CAAC,MAAM,GAAG,QAAQ,GAAG,IAAI,CAAC,KAAK,EAAE,CAAA;IAC3E,OAAO,GAAG,IAAI,CAAC,IAAI,GAAG,QAAQ,GAAG,IAAI,CAAC,KAAK,EAAE,CAAA;AAC/C,CAAC;AAED,SAAS,MAAM,CAAC,CAAS,EAAE,QAAgB,EAAE,MAAc;IACzD,OAAO,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAA;AAC9C,CAAC;AAED,SAAS,WAAW,CAAC,OAAqB;IACxC,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAA;IACjD,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAA;IAC7B,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,MAAM,CAAA;IACjE,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,MAAM,CAAA;IACrE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,aAAa,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC,KAAK,MAAM,CACjG,SAAS,EACT,SAAS,EACT,UAAU,CACX,EAAE,CAAA;AACL,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,OAAqB,EAAE,IAAuB;IACvE,MAAM,KAAK,GAAa,EAAE,CAAA;IAC1B,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE;QACvB,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE;YAC5B,MAAM,IAAI,GAAG,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,IAAI,CAAC,CAAA;YACzC,MAAM,MAAM,GAAG,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,IAAI,CAAC,CAAA;YAC7C,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,IAAI,IAAI,IAAI,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,OAAO,KAAK,CAAC,CAAC,IAAI,GAAG,CAAC,CAAA;SAC9G;KACF;IACD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAA;IACnC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,CAAA;IAC1D,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,WAAW,CAAC,OAAO,CAAC,IAAI,CAAA;AAC3D,CAAC"}
@@ -0,0 +1,14 @@
1
+ declare function peg$SyntaxError(message: any, expected: any, found: any, location: any): void;
2
+ declare class peg$SyntaxError {
3
+ constructor(message: any, expected: any, found: any, location: any);
4
+ message: any;
5
+ expected: any;
6
+ found: any;
7
+ location: any;
8
+ name: string;
9
+ }
10
+ declare namespace peg$SyntaxError {
11
+ function buildMessage(expected: any, found: any): string;
12
+ }
13
+ declare function peg$parse(input: any, options: any): any[];
14
+ export { peg$SyntaxError as SyntaxError, peg$parse as parse };