@utilix-tech/sdk 0.82.0 → 0.83.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -2,6 +2,10 @@
2
2
 
3
3
  Full release notes for all Utilix surfaces (browser tools, REST API, SDKs, MCP server) live at [utilix.tech/changelog](https://utilix.tech/changelog). This file tracks just this package.
4
4
 
5
+ ## 0.83.0
6
+ - Add `extractMarkdownLinkReferences` (markdown-link-reference-extractor): extract reference-style Markdown links (`[text][ref]`, the `[text][]` shortcut, and `![alt][ref]` image references) and match them against their `[ref]: url` definitions, flagging unresolved references and unused definitions.
7
+ - Add `extractPromptTemplateVariables` (prompt-template-variable-extractor): extract `{{variable}}`-style placeholders from a prompt template, report occurrence counts, flag duplicates, and optionally cross-check against a list of provided variable names.
8
+
5
9
  ## 0.82.0
6
10
  - Add `generateRobotsTxt` (robots-txt-generator): build a robots.txt file from User-agent groups with Allow/Disallow rules and an optional Crawl-delay, plus a list of Sitemap URLs. The generator-side sibling of `validateRobotsTxt`.
7
11
 
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # @utilix-tech/sdk
2
2
 
3
- **716 developer utility functions for Node.js: runs locally, no API key required.**
3
+ **718 developer utility functions for Node.js: runs locally, no API key required.**
4
4
 
5
5
  [![npm version](https://img.shields.io/npm/v/@utilix-tech/sdk?style=flat-square&color=cb3837)](https://www.npmjs.com/package/@utilix-tech/sdk)
6
6
  [![npm downloads](https://img.shields.io/npm/dm/@utilix-tech/sdk?style=flat-square)](https://www.npmjs.com/package/@utilix-tech/sdk)
@@ -877,6 +877,11 @@ extractMarkdownFootnotes("A claim[^1].\n\n[^1]: The source.");
877
877
  import { validateAria } from "@utilix-tech/sdk/code";
878
878
  validateAria('<div role="checkbox">Opt in</div>');
879
879
  // { elementCount: 1, elementsWithRoleOrAria: 1, valid: false, issues: [{ severity: "error", message: 'role="checkbox" is missing required attribute aria-checked', ... }] }
880
+
881
+ // Extract reference-style Markdown links ([text][ref], [text][], ![alt][ref]) and match them against [ref]: url definitions
882
+ import { extractMarkdownLinkReferences } from "@utilix-tech/sdk/code";
883
+ extractMarkdownLinkReferences("See the [docs][api-ref].\n\n[api-ref]: https://example.com/api \"API Reference\"");
884
+ // { referenceCount: 1, definitionCount: 1, resolved: [{ text: "docs", label: "api-ref", image: false, url: "https://example.com/api", title: "API Reference" }], unresolvedReferences: [], unusedDefinitions: [] }
880
885
  ```
881
886
 
882
887
  ---
@@ -1050,11 +1055,11 @@ readMidiInfo(new Uint8Array(midiBytes));
1050
1055
  | `@utilix-tech/sdk/units` | Bytes, CSS px/rem, number bases, currency format, credit card/IBAN/barcode/ISBN/VIN/ISIN validation, loan calculator, EMI calculator, compound/simple interest calculators, VAT/sales tax calculator, tip/bill split calculator, break-even point calculator, Rule of 72 calculator, savings goal calculator, ROI calculator, cash denomination/till calculator, payback period calculator, CD maturity calculator, debt-to-income ratio calculator, freelancer hourly rate calculator, debt snowball/avalanche payoff planner, tax-equivalent yield calculator, mortgage discount points break-even calculator, loan prepayment penalty calculator, data transfer time / required bandwidth estimator, real rate of return (Fisher equation) calculator |
1051
1056
  | `@utilix-tech/sdk/network` | HTTP status codes, IP validation, country flags, geolocation URLs, HAR file parsing, User-Agent parsing, IPv6 address compress/expand, Permissions-Policy header builder, Client Hints header builder/parser, Content-Disposition header builder/parser, X-Content-Type-Options header builder/risk assessor, sitemap.xml validator, sitemap index splitter, robots.txt validator, robots.txt generator, Prefer header builder/parser (RFC 7240), Retry-After header builder/parser (RFC 9110), Priority header builder/parser (RFC 9218), WebSocket close code reference/lookup, Strict-Transport-Security (HSTS) header builder/parser, X-Robots-Tag header builder/parser, WebSocket frame opcode reference/lookup, robots meta tag builder/parser, Cookie header byte-size budget calculator |
1052
1057
  | `@utilix-tech/sdk/api` | cURL build/parse, JWT decode/sign, JWKS parse, CORS headers, CSP header, TOTP/HOTP code generator, webhook HMAC signature verifier |
1053
- | `@utilix-tech/sdk/code` | SQL format/minify, HTML format/minify, regex tester, GraphQL format, MIME type lookup, GitHub URL parsing, regex ReDoS detector, Conventional Commits linter, package.json exports field validator, package.json dependency range auditor, regex capture group/backreference visualizer, SVG sprite symbol extractor, ARIA role & attribute validator, database connection string parser, Markdown code fence language tag validator, SQL query parameter placeholder counter |
1058
+ | `@utilix-tech/sdk/code` | SQL format/minify, HTML format/minify, regex tester, GraphQL format, MIME type lookup, GitHub URL parsing, regex ReDoS detector, Conventional Commits linter, package.json exports field validator, package.json dependency range auditor, regex capture group/backreference visualizer, SVG sprite symbol extractor, ARIA role & attribute validator, database connection string parser, Markdown code fence language tag validator, SQL query parameter placeholder counter, Markdown link reference extractor |
1054
1059
  | `@utilix-tech/sdk/color` | Hex/RGB/HSL/HSV/CMYK convert, palette generation, contrast check |
1055
1060
  | `@utilix-tech/sdk/css` | CSS gradient, box-shadow, border-radius, keyframe animation generators |
1056
1061
  | `@utilix-tech/sdk/misc` | SVG optimize/sanitize, file size format, Unicode inspector |
1057
- | `@utilix-tech/sdk/ai_agent` | Token estimate/trim, chunk text, extract URLs/JSON/keywords, sanitize HTML, flatten/merge JSON, dedupe lines, validate schema, PII/secret/injection detect, vector similarity, few-shot prompt formatter, tool-definition schema linter, retry/backoff schedule calculator |
1062
+ | `@utilix-tech/sdk/ai_agent` | Token estimate/trim, chunk text, extract URLs/JSON/keywords, sanitize HTML, flatten/merge JSON, dedupe lines, validate schema, PII/secret/injection detect, vector similarity, few-shot prompt formatter, tool-definition schema linter, retry/backoff schedule calculator, prompt template variable extractor |
1058
1063
  | `@utilix-tech/sdk/media` | Image format & dimension reading from raw bytes (PNG, JPEG, GIF, WebP, BMP); PDF metadata reading; PDF page dimension/orientation listing; WAV audio info; ID3 tags; ICO favicon inspection; FLAC metadata reading; MP4/WebM video info; GIF frame/loop inspection |
1059
1064
 
1060
1065
  ---
@@ -409,6 +409,30 @@ interface RetryBackoffResult {
409
409
  declare function calculateRetryBackoffSchedule(input: RetryBackoffInput): RetryBackoffResult | {
410
410
  error: string;
411
411
  };
412
+ interface PromptTemplateVariable {
413
+ name: string;
414
+ count: number;
415
+ }
416
+ interface PromptTemplateVariableResult {
417
+ variableCount: number;
418
+ variables: PromptTemplateVariable[];
419
+ duplicates: string[];
420
+ missing: string[];
421
+ unused: string[];
422
+ }
423
+ /**
424
+ * Extract every {{variable}}-style placeholder from a prompt template,
425
+ * reporting each unique variable's occurrence count and flagging ones used
426
+ * more than once. When providedVars is given, also cross-checks the
427
+ * template against it: variables the template uses but providedVars is
428
+ * missing, and names in providedVars the template never references. Only
429
+ * double-curly {{name}} syntax is recognized (dotted/dashed names like
430
+ * {{user.name}} are allowed); single-brace, triple-brace, and Jinja-style
431
+ * {% %} tags are out of scope.
432
+ */
433
+ declare function extractPromptTemplateVariables(template: string, providedVars?: string[]): PromptTemplateVariableResult | {
434
+ error: string;
435
+ };
412
436
 
413
437
  type ai_agent_ChunkStrategy = ChunkStrategy;
414
438
  type ai_agent_CompressHtmlResult = CompressHtmlResult;
@@ -440,6 +464,8 @@ type ai_agent_ModelPricing = ModelPricing;
440
464
  type ai_agent_PiiDetectResult = PiiDetectResult;
441
465
  type ai_agent_PiiFinding = PiiFinding;
442
466
  type ai_agent_PiiType = PiiType;
467
+ type ai_agent_PromptTemplateVariable = PromptTemplateVariable;
468
+ type ai_agent_PromptTemplateVariableResult = PromptTemplateVariableResult;
443
469
  type ai_agent_RankedChunk = RankedChunk;
444
470
  type ai_agent_RelevanceResult = RelevanceResult;
445
471
  type ai_agent_RetryBackoffAttempt = RetryBackoffAttempt;
@@ -479,6 +505,7 @@ declare const ai_agent_expandQuery: typeof expandQuery;
479
505
  declare const ai_agent_extractEntities: typeof extractEntities;
480
506
  declare const ai_agent_extractJson: typeof extractJson;
481
507
  declare const ai_agent_extractKeywords: typeof extractKeywords;
508
+ declare const ai_agent_extractPromptTemplateVariables: typeof extractPromptTemplateVariables;
482
509
  declare const ai_agent_extractTables: typeof extractTables;
483
510
  declare const ai_agent_extractUrls: typeof extractUrls;
484
511
  declare const ai_agent_flattenJson: typeof flattenJson;
@@ -496,7 +523,7 @@ declare const ai_agent_unflattenJson: typeof unflattenJson;
496
523
  declare const ai_agent_validateJsonSchema: typeof validateJsonSchema;
497
524
  declare const ai_agent_vectorSimilarity: typeof vectorSimilarity;
498
525
  declare namespace ai_agent {
499
- export { type ai_agent_ChunkStrategy as ChunkStrategy, type ai_agent_CompressHtmlResult as CompressHtmlResult, type ai_agent_CompressJsonResult as CompressJsonResult, type ai_agent_CompressMarkdownResult as CompressMarkdownResult, type ai_agent_CostEstimate as CostEstimate, type ai_agent_DedupeResult as DedupeResult, type ai_agent_DedupeStrategy as DedupeStrategy, type ai_agent_DiffEntry2 as DiffEntry2, type ai_agent_DiffOp2 as DiffOp2, type ai_agent_DiffResult2 as DiffResult2, type ai_agent_Entity2 as Entity2, type ai_agent_EntityType2 as EntityType2, type ai_agent_ExtractJsonResult as ExtractJsonResult, type ai_agent_ExtractKeywordsResult as ExtractKeywordsResult, type ai_agent_ExtractUrlsResult as ExtractUrlsResult, type ai_agent_FewShotExample as FewShotExample, type ai_agent_FewShotFormat as FewShotFormat, type ai_agent_FewShotFormatResult as FewShotFormatResult, type ai_agent_InjectionDetectResult as InjectionDetectResult, type ai_agent_InjectionFinding as InjectionFinding, type ai_agent_JsonBlock as JsonBlock, type ai_agent_JsonRepairResult as JsonRepairResult, type ai_agent_Keyword as Keyword, ai_agent_MODEL_PRICING as MODEL_PRICING, type ai_agent_MergeResult as MergeResult, type ai_agent_MergeStrategy as MergeStrategy, type ai_agent_ModelPricing as ModelPricing, type ai_agent_PiiDetectResult as PiiDetectResult, type ai_agent_PiiFinding as PiiFinding, type ai_agent_PiiType as PiiType, type ai_agent_RankedChunk as RankedChunk, type ai_agent_RelevanceResult as RelevanceResult, type ai_agent_RetryBackoffAttempt as RetryBackoffAttempt, type ai_agent_RetryBackoffInput as RetryBackoffInput, type ai_agent_RetryBackoffResult as RetryBackoffResult, type ai_agent_RetryJitterMode as RetryJitterMode, type ai_agent_SanitizeResult as SanitizeResult, type ai_agent_SecretDetectResult as SecretDetectResult, type ai_agent_SecretFinding as SecretFinding, type ai_agent_SecretType as SecretType, type ai_agent_SummaryResult as SummaryResult, type ai_agent_TableResult2 as TableResult2, type ai_agent_TextChunk as TextChunk, type ai_agent_TokenEstimate as TokenEstimate, type ai_agent_TokenEstimateResult as TokenEstimateResult, type ai_agent_ToolSchemaIssue as ToolSchemaIssue, type ai_agent_ToolSchemaLintResult as ToolSchemaLintResult, type ai_agent_TrimResult as TrimResult, type ai_agent_TrimStrategy as TrimStrategy, type ai_agent_UrlMatch as UrlMatch, type ai_agent_ValidationError as ValidationError, type ai_agent_ValidationResult as ValidationResult, type ai_agent_VectorSimilarityResult as VectorSimilarityResult, ai_agent_calculateRetryBackoffSchedule as calculateRetryBackoffSchedule, ai_agent_chunkText as chunkText, ai_agent_compressHtml as compressHtml, ai_agent_compressJson as compressJson, ai_agent_compressMarkdown as compressMarkdown, ai_agent_deduplicateLines as deduplicateLines, ai_agent_detectPii as detectPii, ai_agent_detectPromptInjection as detectPromptInjection, ai_agent_detectSecrets as detectSecrets, ai_agent_diffJson as diffJson, ai_agent_estimateCost as estimateCost, ai_agent_estimateTokens as estimateTokens, ai_agent_expandQuery as expandQuery, ai_agent_extractEntities as extractEntities, ai_agent_extractJson as extractJson, ai_agent_extractKeywords as extractKeywords, ai_agent_extractTables as extractTables, ai_agent_extractUrls as extractUrls, ai_agent_flattenJson as flattenJson, ai_agent_formatFewShotExamples as formatFewShotExamples, ai_agent_lintToolSchema as lintToolSchema, ai_agent_mergeJson as mergeJson, ai_agent_redactPii as redactPii, ai_agent_repairJson as repairJson, ai_agent_rerankChunks as rerankChunks, ai_agent_sanitizeHtml as sanitizeHtml, ai_agent_scoreRelevance as scoreRelevance, ai_agent_summarizeForLlm as summarizeForLlm, ai_agent_trimToTokens as trimToTokens, ai_agent_unflattenJson as unflattenJson, ai_agent_validateJsonSchema as validateJsonSchema, ai_agent_vectorSimilarity as vectorSimilarity };
526
+ export { type ai_agent_ChunkStrategy as ChunkStrategy, type ai_agent_CompressHtmlResult as CompressHtmlResult, type ai_agent_CompressJsonResult as CompressJsonResult, type ai_agent_CompressMarkdownResult as CompressMarkdownResult, type ai_agent_CostEstimate as CostEstimate, type ai_agent_DedupeResult as DedupeResult, type ai_agent_DedupeStrategy as DedupeStrategy, type ai_agent_DiffEntry2 as DiffEntry2, type ai_agent_DiffOp2 as DiffOp2, type ai_agent_DiffResult2 as DiffResult2, type ai_agent_Entity2 as Entity2, type ai_agent_EntityType2 as EntityType2, type ai_agent_ExtractJsonResult as ExtractJsonResult, type ai_agent_ExtractKeywordsResult as ExtractKeywordsResult, type ai_agent_ExtractUrlsResult as ExtractUrlsResult, type ai_agent_FewShotExample as FewShotExample, type ai_agent_FewShotFormat as FewShotFormat, type ai_agent_FewShotFormatResult as FewShotFormatResult, type ai_agent_InjectionDetectResult as InjectionDetectResult, type ai_agent_InjectionFinding as InjectionFinding, type ai_agent_JsonBlock as JsonBlock, type ai_agent_JsonRepairResult as JsonRepairResult, type ai_agent_Keyword as Keyword, ai_agent_MODEL_PRICING as MODEL_PRICING, type ai_agent_MergeResult as MergeResult, type ai_agent_MergeStrategy as MergeStrategy, type ai_agent_ModelPricing as ModelPricing, type ai_agent_PiiDetectResult as PiiDetectResult, type ai_agent_PiiFinding as PiiFinding, type ai_agent_PiiType as PiiType, type ai_agent_PromptTemplateVariable as PromptTemplateVariable, type ai_agent_PromptTemplateVariableResult as PromptTemplateVariableResult, type ai_agent_RankedChunk as RankedChunk, type ai_agent_RelevanceResult as RelevanceResult, type ai_agent_RetryBackoffAttempt as RetryBackoffAttempt, type ai_agent_RetryBackoffInput as RetryBackoffInput, type ai_agent_RetryBackoffResult as RetryBackoffResult, type ai_agent_RetryJitterMode as RetryJitterMode, type ai_agent_SanitizeResult as SanitizeResult, type ai_agent_SecretDetectResult as SecretDetectResult, type ai_agent_SecretFinding as SecretFinding, type ai_agent_SecretType as SecretType, type ai_agent_SummaryResult as SummaryResult, type ai_agent_TableResult2 as TableResult2, type ai_agent_TextChunk as TextChunk, type ai_agent_TokenEstimate as TokenEstimate, type ai_agent_TokenEstimateResult as TokenEstimateResult, type ai_agent_ToolSchemaIssue as ToolSchemaIssue, type ai_agent_ToolSchemaLintResult as ToolSchemaLintResult, type ai_agent_TrimResult as TrimResult, type ai_agent_TrimStrategy as TrimStrategy, type ai_agent_UrlMatch as UrlMatch, type ai_agent_ValidationError as ValidationError, type ai_agent_ValidationResult as ValidationResult, type ai_agent_VectorSimilarityResult as VectorSimilarityResult, ai_agent_calculateRetryBackoffSchedule as calculateRetryBackoffSchedule, ai_agent_chunkText as chunkText, ai_agent_compressHtml as compressHtml, ai_agent_compressJson as compressJson, ai_agent_compressMarkdown as compressMarkdown, ai_agent_deduplicateLines as deduplicateLines, ai_agent_detectPii as detectPii, ai_agent_detectPromptInjection as detectPromptInjection, ai_agent_detectSecrets as detectSecrets, ai_agent_diffJson as diffJson, ai_agent_estimateCost as estimateCost, ai_agent_estimateTokens as estimateTokens, ai_agent_expandQuery as expandQuery, ai_agent_extractEntities as extractEntities, ai_agent_extractJson as extractJson, ai_agent_extractKeywords as extractKeywords, ai_agent_extractPromptTemplateVariables as extractPromptTemplateVariables, ai_agent_extractTables as extractTables, ai_agent_extractUrls as extractUrls, ai_agent_flattenJson as flattenJson, ai_agent_formatFewShotExamples as formatFewShotExamples, ai_agent_lintToolSchema as lintToolSchema, ai_agent_mergeJson as mergeJson, ai_agent_redactPii as redactPii, ai_agent_repairJson as repairJson, ai_agent_rerankChunks as rerankChunks, ai_agent_sanitizeHtml as sanitizeHtml, ai_agent_scoreRelevance as scoreRelevance, ai_agent_summarizeForLlm as summarizeForLlm, ai_agent_trimToTokens as trimToTokens, ai_agent_unflattenJson as unflattenJson, ai_agent_validateJsonSchema as validateJsonSchema, ai_agent_vectorSimilarity as vectorSimilarity };
500
527
  }
501
528
 
502
- export { type VectorSimilarityResult as $, type RetryJitterMode as A, type SecretDetectResult as B, type ChunkStrategy as C, type DedupeResult as D, type Entity2 as E, type FewShotExample as F, type SecretFinding as G, type SecretType as H, type InjectionDetectResult as I, type JsonBlock as J, type Keyword as K, type SummaryResult as L, MODEL_PRICING as M, type TextChunk as N, type TokenEstimate as O, type PiiDetectResult as P, type TokenEstimateResult as Q, type RankedChunk as R, type SanitizeResult as S, type TableResult2 as T, type ToolSchemaIssue as U, type ToolSchemaLintResult as V, type TrimResult as W, type TrimStrategy as X, type UrlMatch as Y, type ValidationError as Z, type ValidationResult as _, ai_agent as a, calculateRetryBackoffSchedule as a0, chunkText as a1, compressHtml as a2, compressJson as a3, compressMarkdown as a4, deduplicateLines as a5, detectPii as a6, detectPromptInjection as a7, detectSecrets as a8, diffJson as a9, estimateCost as aa, estimateTokens as ab, expandQuery as ac, extractEntities as ad, extractJson as ae, extractKeywords as af, extractTables as ag, extractUrls as ah, flattenJson as ai, formatFewShotExamples as aj, lintToolSchema as ak, mergeJson as al, redactPii as am, repairJson as an, rerankChunks as ao, sanitizeHtml as ap, scoreRelevance as aq, summarizeForLlm as ar, trimToTokens as as, unflattenJson as at, validateJsonSchema as au, vectorSimilarity as av, type CompressHtmlResult as b, type CompressJsonResult as c, type CompressMarkdownResult as d, type CostEstimate as e, type DedupeStrategy as f, type DiffEntry2 as g, type DiffOp2 as h, type DiffResult2 as i, type EntityType2 as j, type ExtractJsonResult as k, type ExtractKeywordsResult as l, type ExtractUrlsResult as m, type FewShotFormat as n, type FewShotFormatResult as o, type InjectionFinding as p, type JsonRepairResult as q, type MergeResult as r, type MergeStrategy as s, type ModelPricing as t, type PiiFinding as u, type PiiType as v, type RelevanceResult as w, type RetryBackoffAttempt as x, type RetryBackoffInput as y, type RetryBackoffResult as z };
529
+ export { type ValidationError as $, type RetryBackoffInput as A, type RetryBackoffResult as B, type ChunkStrategy as C, type DedupeResult as D, type Entity2 as E, type FewShotExample as F, type RetryJitterMode as G, type SecretDetectResult as H, type InjectionDetectResult as I, type JsonBlock as J, type Keyword as K, type SecretFinding as L, MODEL_PRICING as M, type SecretType as N, type SummaryResult as O, type PiiDetectResult as P, type TextChunk as Q, type RankedChunk as R, type SanitizeResult as S, type TableResult2 as T, type TokenEstimate as U, type TokenEstimateResult as V, type ToolSchemaIssue as W, type ToolSchemaLintResult as X, type TrimResult as Y, type TrimStrategy as Z, type UrlMatch as _, ai_agent as a, type ValidationResult as a0, type VectorSimilarityResult as a1, calculateRetryBackoffSchedule as a2, chunkText as a3, compressHtml as a4, compressJson as a5, compressMarkdown as a6, deduplicateLines as a7, detectPii as a8, detectPromptInjection as a9, detectSecrets as aa, diffJson as ab, estimateCost as ac, estimateTokens as ad, expandQuery as ae, extractEntities as af, extractJson as ag, extractKeywords as ah, extractPromptTemplateVariables as ai, extractTables as aj, extractUrls as ak, flattenJson as al, formatFewShotExamples as am, lintToolSchema as an, mergeJson as ao, redactPii as ap, repairJson as aq, rerankChunks as ar, sanitizeHtml as as, scoreRelevance as at, summarizeForLlm as au, trimToTokens as av, unflattenJson as aw, validateJsonSchema as ax, vectorSimilarity as ay, type CompressHtmlResult as b, type CompressJsonResult as c, type CompressMarkdownResult as d, type CostEstimate as e, type DedupeStrategy as f, type DiffEntry2 as g, type DiffOp2 as h, type DiffResult2 as i, type EntityType2 as j, type ExtractJsonResult as k, type ExtractKeywordsResult as l, type ExtractUrlsResult as m, type FewShotFormat as n, type FewShotFormatResult as o, type InjectionFinding as p, type JsonRepairResult as q, type MergeResult as r, type MergeStrategy as s, type ModelPricing as t, type PiiFinding as u, type PiiType as v, type PromptTemplateVariable as w, type PromptTemplateVariableResult as x, type RelevanceResult as y, type RetryBackoffAttempt as z };
@@ -409,6 +409,30 @@ interface RetryBackoffResult {
409
409
  declare function calculateRetryBackoffSchedule(input: RetryBackoffInput): RetryBackoffResult | {
410
410
  error: string;
411
411
  };
412
+ interface PromptTemplateVariable {
413
+ name: string;
414
+ count: number;
415
+ }
416
+ interface PromptTemplateVariableResult {
417
+ variableCount: number;
418
+ variables: PromptTemplateVariable[];
419
+ duplicates: string[];
420
+ missing: string[];
421
+ unused: string[];
422
+ }
423
+ /**
424
+ * Extract every {{variable}}-style placeholder from a prompt template,
425
+ * reporting each unique variable's occurrence count and flagging ones used
426
+ * more than once. When providedVars is given, also cross-checks the
427
+ * template against it: variables the template uses but providedVars is
428
+ * missing, and names in providedVars the template never references. Only
429
+ * double-curly {{name}} syntax is recognized (dotted/dashed names like
430
+ * {{user.name}} are allowed); single-brace, triple-brace, and Jinja-style
431
+ * {% %} tags are out of scope.
432
+ */
433
+ declare function extractPromptTemplateVariables(template: string, providedVars?: string[]): PromptTemplateVariableResult | {
434
+ error: string;
435
+ };
412
436
 
413
437
  type ai_agent_ChunkStrategy = ChunkStrategy;
414
438
  type ai_agent_CompressHtmlResult = CompressHtmlResult;
@@ -440,6 +464,8 @@ type ai_agent_ModelPricing = ModelPricing;
440
464
  type ai_agent_PiiDetectResult = PiiDetectResult;
441
465
  type ai_agent_PiiFinding = PiiFinding;
442
466
  type ai_agent_PiiType = PiiType;
467
+ type ai_agent_PromptTemplateVariable = PromptTemplateVariable;
468
+ type ai_agent_PromptTemplateVariableResult = PromptTemplateVariableResult;
443
469
  type ai_agent_RankedChunk = RankedChunk;
444
470
  type ai_agent_RelevanceResult = RelevanceResult;
445
471
  type ai_agent_RetryBackoffAttempt = RetryBackoffAttempt;
@@ -479,6 +505,7 @@ declare const ai_agent_expandQuery: typeof expandQuery;
479
505
  declare const ai_agent_extractEntities: typeof extractEntities;
480
506
  declare const ai_agent_extractJson: typeof extractJson;
481
507
  declare const ai_agent_extractKeywords: typeof extractKeywords;
508
+ declare const ai_agent_extractPromptTemplateVariables: typeof extractPromptTemplateVariables;
482
509
  declare const ai_agent_extractTables: typeof extractTables;
483
510
  declare const ai_agent_extractUrls: typeof extractUrls;
484
511
  declare const ai_agent_flattenJson: typeof flattenJson;
@@ -496,7 +523,7 @@ declare const ai_agent_unflattenJson: typeof unflattenJson;
496
523
  declare const ai_agent_validateJsonSchema: typeof validateJsonSchema;
497
524
  declare const ai_agent_vectorSimilarity: typeof vectorSimilarity;
498
525
  declare namespace ai_agent {
499
- export { type ai_agent_ChunkStrategy as ChunkStrategy, type ai_agent_CompressHtmlResult as CompressHtmlResult, type ai_agent_CompressJsonResult as CompressJsonResult, type ai_agent_CompressMarkdownResult as CompressMarkdownResult, type ai_agent_CostEstimate as CostEstimate, type ai_agent_DedupeResult as DedupeResult, type ai_agent_DedupeStrategy as DedupeStrategy, type ai_agent_DiffEntry2 as DiffEntry2, type ai_agent_DiffOp2 as DiffOp2, type ai_agent_DiffResult2 as DiffResult2, type ai_agent_Entity2 as Entity2, type ai_agent_EntityType2 as EntityType2, type ai_agent_ExtractJsonResult as ExtractJsonResult, type ai_agent_ExtractKeywordsResult as ExtractKeywordsResult, type ai_agent_ExtractUrlsResult as ExtractUrlsResult, type ai_agent_FewShotExample as FewShotExample, type ai_agent_FewShotFormat as FewShotFormat, type ai_agent_FewShotFormatResult as FewShotFormatResult, type ai_agent_InjectionDetectResult as InjectionDetectResult, type ai_agent_InjectionFinding as InjectionFinding, type ai_agent_JsonBlock as JsonBlock, type ai_agent_JsonRepairResult as JsonRepairResult, type ai_agent_Keyword as Keyword, ai_agent_MODEL_PRICING as MODEL_PRICING, type ai_agent_MergeResult as MergeResult, type ai_agent_MergeStrategy as MergeStrategy, type ai_agent_ModelPricing as ModelPricing, type ai_agent_PiiDetectResult as PiiDetectResult, type ai_agent_PiiFinding as PiiFinding, type ai_agent_PiiType as PiiType, type ai_agent_RankedChunk as RankedChunk, type ai_agent_RelevanceResult as RelevanceResult, type ai_agent_RetryBackoffAttempt as RetryBackoffAttempt, type ai_agent_RetryBackoffInput as RetryBackoffInput, type ai_agent_RetryBackoffResult as RetryBackoffResult, type ai_agent_RetryJitterMode as RetryJitterMode, type ai_agent_SanitizeResult as SanitizeResult, type ai_agent_SecretDetectResult as SecretDetectResult, type ai_agent_SecretFinding as SecretFinding, type ai_agent_SecretType as SecretType, type ai_agent_SummaryResult as SummaryResult, type ai_agent_TableResult2 as TableResult2, type ai_agent_TextChunk as TextChunk, type ai_agent_TokenEstimate as TokenEstimate, type ai_agent_TokenEstimateResult as TokenEstimateResult, type ai_agent_ToolSchemaIssue as ToolSchemaIssue, type ai_agent_ToolSchemaLintResult as ToolSchemaLintResult, type ai_agent_TrimResult as TrimResult, type ai_agent_TrimStrategy as TrimStrategy, type ai_agent_UrlMatch as UrlMatch, type ai_agent_ValidationError as ValidationError, type ai_agent_ValidationResult as ValidationResult, type ai_agent_VectorSimilarityResult as VectorSimilarityResult, ai_agent_calculateRetryBackoffSchedule as calculateRetryBackoffSchedule, ai_agent_chunkText as chunkText, ai_agent_compressHtml as compressHtml, ai_agent_compressJson as compressJson, ai_agent_compressMarkdown as compressMarkdown, ai_agent_deduplicateLines as deduplicateLines, ai_agent_detectPii as detectPii, ai_agent_detectPromptInjection as detectPromptInjection, ai_agent_detectSecrets as detectSecrets, ai_agent_diffJson as diffJson, ai_agent_estimateCost as estimateCost, ai_agent_estimateTokens as estimateTokens, ai_agent_expandQuery as expandQuery, ai_agent_extractEntities as extractEntities, ai_agent_extractJson as extractJson, ai_agent_extractKeywords as extractKeywords, ai_agent_extractTables as extractTables, ai_agent_extractUrls as extractUrls, ai_agent_flattenJson as flattenJson, ai_agent_formatFewShotExamples as formatFewShotExamples, ai_agent_lintToolSchema as lintToolSchema, ai_agent_mergeJson as mergeJson, ai_agent_redactPii as redactPii, ai_agent_repairJson as repairJson, ai_agent_rerankChunks as rerankChunks, ai_agent_sanitizeHtml as sanitizeHtml, ai_agent_scoreRelevance as scoreRelevance, ai_agent_summarizeForLlm as summarizeForLlm, ai_agent_trimToTokens as trimToTokens, ai_agent_unflattenJson as unflattenJson, ai_agent_validateJsonSchema as validateJsonSchema, ai_agent_vectorSimilarity as vectorSimilarity };
526
+ export { type ai_agent_ChunkStrategy as ChunkStrategy, type ai_agent_CompressHtmlResult as CompressHtmlResult, type ai_agent_CompressJsonResult as CompressJsonResult, type ai_agent_CompressMarkdownResult as CompressMarkdownResult, type ai_agent_CostEstimate as CostEstimate, type ai_agent_DedupeResult as DedupeResult, type ai_agent_DedupeStrategy as DedupeStrategy, type ai_agent_DiffEntry2 as DiffEntry2, type ai_agent_DiffOp2 as DiffOp2, type ai_agent_DiffResult2 as DiffResult2, type ai_agent_Entity2 as Entity2, type ai_agent_EntityType2 as EntityType2, type ai_agent_ExtractJsonResult as ExtractJsonResult, type ai_agent_ExtractKeywordsResult as ExtractKeywordsResult, type ai_agent_ExtractUrlsResult as ExtractUrlsResult, type ai_agent_FewShotExample as FewShotExample, type ai_agent_FewShotFormat as FewShotFormat, type ai_agent_FewShotFormatResult as FewShotFormatResult, type ai_agent_InjectionDetectResult as InjectionDetectResult, type ai_agent_InjectionFinding as InjectionFinding, type ai_agent_JsonBlock as JsonBlock, type ai_agent_JsonRepairResult as JsonRepairResult, type ai_agent_Keyword as Keyword, ai_agent_MODEL_PRICING as MODEL_PRICING, type ai_agent_MergeResult as MergeResult, type ai_agent_MergeStrategy as MergeStrategy, type ai_agent_ModelPricing as ModelPricing, type ai_agent_PiiDetectResult as PiiDetectResult, type ai_agent_PiiFinding as PiiFinding, type ai_agent_PiiType as PiiType, type ai_agent_PromptTemplateVariable as PromptTemplateVariable, type ai_agent_PromptTemplateVariableResult as PromptTemplateVariableResult, type ai_agent_RankedChunk as RankedChunk, type ai_agent_RelevanceResult as RelevanceResult, type ai_agent_RetryBackoffAttempt as RetryBackoffAttempt, type ai_agent_RetryBackoffInput as RetryBackoffInput, type ai_agent_RetryBackoffResult as RetryBackoffResult, type ai_agent_RetryJitterMode as RetryJitterMode, type ai_agent_SanitizeResult as SanitizeResult, type ai_agent_SecretDetectResult as SecretDetectResult, type ai_agent_SecretFinding as SecretFinding, type ai_agent_SecretType as SecretType, type ai_agent_SummaryResult as SummaryResult, type ai_agent_TableResult2 as TableResult2, type ai_agent_TextChunk as TextChunk, type ai_agent_TokenEstimate as TokenEstimate, type ai_agent_TokenEstimateResult as TokenEstimateResult, type ai_agent_ToolSchemaIssue as ToolSchemaIssue, type ai_agent_ToolSchemaLintResult as ToolSchemaLintResult, type ai_agent_TrimResult as TrimResult, type ai_agent_TrimStrategy as TrimStrategy, type ai_agent_UrlMatch as UrlMatch, type ai_agent_ValidationError as ValidationError, type ai_agent_ValidationResult as ValidationResult, type ai_agent_VectorSimilarityResult as VectorSimilarityResult, ai_agent_calculateRetryBackoffSchedule as calculateRetryBackoffSchedule, ai_agent_chunkText as chunkText, ai_agent_compressHtml as compressHtml, ai_agent_compressJson as compressJson, ai_agent_compressMarkdown as compressMarkdown, ai_agent_deduplicateLines as deduplicateLines, ai_agent_detectPii as detectPii, ai_agent_detectPromptInjection as detectPromptInjection, ai_agent_detectSecrets as detectSecrets, ai_agent_diffJson as diffJson, ai_agent_estimateCost as estimateCost, ai_agent_estimateTokens as estimateTokens, ai_agent_expandQuery as expandQuery, ai_agent_extractEntities as extractEntities, ai_agent_extractJson as extractJson, ai_agent_extractKeywords as extractKeywords, ai_agent_extractPromptTemplateVariables as extractPromptTemplateVariables, ai_agent_extractTables as extractTables, ai_agent_extractUrls as extractUrls, ai_agent_flattenJson as flattenJson, ai_agent_formatFewShotExamples as formatFewShotExamples, ai_agent_lintToolSchema as lintToolSchema, ai_agent_mergeJson as mergeJson, ai_agent_redactPii as redactPii, ai_agent_repairJson as repairJson, ai_agent_rerankChunks as rerankChunks, ai_agent_sanitizeHtml as sanitizeHtml, ai_agent_scoreRelevance as scoreRelevance, ai_agent_summarizeForLlm as summarizeForLlm, ai_agent_trimToTokens as trimToTokens, ai_agent_unflattenJson as unflattenJson, ai_agent_validateJsonSchema as validateJsonSchema, ai_agent_vectorSimilarity as vectorSimilarity };
500
527
  }
501
528
 
502
- export { type VectorSimilarityResult as $, type RetryJitterMode as A, type SecretDetectResult as B, type ChunkStrategy as C, type DedupeResult as D, type Entity2 as E, type FewShotExample as F, type SecretFinding as G, type SecretType as H, type InjectionDetectResult as I, type JsonBlock as J, type Keyword as K, type SummaryResult as L, MODEL_PRICING as M, type TextChunk as N, type TokenEstimate as O, type PiiDetectResult as P, type TokenEstimateResult as Q, type RankedChunk as R, type SanitizeResult as S, type TableResult2 as T, type ToolSchemaIssue as U, type ToolSchemaLintResult as V, type TrimResult as W, type TrimStrategy as X, type UrlMatch as Y, type ValidationError as Z, type ValidationResult as _, ai_agent as a, calculateRetryBackoffSchedule as a0, chunkText as a1, compressHtml as a2, compressJson as a3, compressMarkdown as a4, deduplicateLines as a5, detectPii as a6, detectPromptInjection as a7, detectSecrets as a8, diffJson as a9, estimateCost as aa, estimateTokens as ab, expandQuery as ac, extractEntities as ad, extractJson as ae, extractKeywords as af, extractTables as ag, extractUrls as ah, flattenJson as ai, formatFewShotExamples as aj, lintToolSchema as ak, mergeJson as al, redactPii as am, repairJson as an, rerankChunks as ao, sanitizeHtml as ap, scoreRelevance as aq, summarizeForLlm as ar, trimToTokens as as, unflattenJson as at, validateJsonSchema as au, vectorSimilarity as av, type CompressHtmlResult as b, type CompressJsonResult as c, type CompressMarkdownResult as d, type CostEstimate as e, type DedupeStrategy as f, type DiffEntry2 as g, type DiffOp2 as h, type DiffResult2 as i, type EntityType2 as j, type ExtractJsonResult as k, type ExtractKeywordsResult as l, type ExtractUrlsResult as m, type FewShotFormat as n, type FewShotFormatResult as o, type InjectionFinding as p, type JsonRepairResult as q, type MergeResult as r, type MergeStrategy as s, type ModelPricing as t, type PiiFinding as u, type PiiType as v, type RelevanceResult as w, type RetryBackoffAttempt as x, type RetryBackoffInput as y, type RetryBackoffResult as z };
529
+ export { type ValidationError as $, type RetryBackoffInput as A, type RetryBackoffResult as B, type ChunkStrategy as C, type DedupeResult as D, type Entity2 as E, type FewShotExample as F, type RetryJitterMode as G, type SecretDetectResult as H, type InjectionDetectResult as I, type JsonBlock as J, type Keyword as K, type SecretFinding as L, MODEL_PRICING as M, type SecretType as N, type SummaryResult as O, type PiiDetectResult as P, type TextChunk as Q, type RankedChunk as R, type SanitizeResult as S, type TableResult2 as T, type TokenEstimate as U, type TokenEstimateResult as V, type ToolSchemaIssue as W, type ToolSchemaLintResult as X, type TrimResult as Y, type TrimStrategy as Z, type UrlMatch as _, ai_agent as a, type ValidationResult as a0, type VectorSimilarityResult as a1, calculateRetryBackoffSchedule as a2, chunkText as a3, compressHtml as a4, compressJson as a5, compressMarkdown as a6, deduplicateLines as a7, detectPii as a8, detectPromptInjection as a9, detectSecrets as aa, diffJson as ab, estimateCost as ac, estimateTokens as ad, expandQuery as ae, extractEntities as af, extractJson as ag, extractKeywords as ah, extractPromptTemplateVariables as ai, extractTables as aj, extractUrls as ak, flattenJson as al, formatFewShotExamples as am, lintToolSchema as an, mergeJson as ao, redactPii as ap, repairJson as aq, rerankChunks as ar, sanitizeHtml as as, scoreRelevance as at, summarizeForLlm as au, trimToTokens as av, unflattenJson as aw, validateJsonSchema as ax, vectorSimilarity as ay, type CompressHtmlResult as b, type CompressJsonResult as c, type CompressMarkdownResult as d, type CostEstimate as e, type DedupeStrategy as f, type DiffEntry2 as g, type DiffOp2 as h, type DiffResult2 as i, type EntityType2 as j, type ExtractJsonResult as k, type ExtractKeywordsResult as l, type ExtractUrlsResult as m, type FewShotFormat as n, type FewShotFormatResult as o, type InjectionFinding as p, type JsonRepairResult as q, type MergeResult as r, type MergeStrategy as s, type ModelPricing as t, type PiiFinding as u, type PiiType as v, type PromptTemplateVariable as w, type PromptTemplateVariableResult as x, type RelevanceResult as y, type RetryBackoffAttempt as z };
@@ -20,6 +20,7 @@ __export(ai_agent_exports, {
20
20
  extractEntities: () => extractEntities,
21
21
  extractJson: () => extractJson,
22
22
  extractKeywords: () => extractKeywords,
23
+ extractPromptTemplateVariables: () => extractPromptTemplateVariables,
23
24
  extractTables: () => extractTables,
24
25
  extractUrls: () => extractUrls,
25
26
  flattenJson: () => flattenJson,
@@ -1173,5 +1174,44 @@ function calculateRetryBackoffSchedule(input) {
1173
1174
  totalWorstCaseMs: round0(totalWorstCaseMs)
1174
1175
  };
1175
1176
  }
1177
+ var PROMPT_TEMPLATE_VARIABLE_REGEX = /\{\{\s*([a-zA-Z0-9_.-]+)\s*\}\}/g;
1178
+ function extractPromptTemplateVariables(template, providedVars) {
1179
+ const trimmed = template.trim();
1180
+ if (!trimmed) return { error: "Empty input" };
1181
+ const order = [];
1182
+ const counts = /* @__PURE__ */ new Map();
1183
+ for (const m of template.matchAll(PROMPT_TEMPLATE_VARIABLE_REGEX)) {
1184
+ const name = m[1];
1185
+ if (!counts.has(name)) {
1186
+ counts.set(name, 0);
1187
+ order.push(name);
1188
+ }
1189
+ counts.set(name, (counts.get(name) ?? 0) + 1);
1190
+ }
1191
+ if (order.length === 0) return { error: "No {{variable}} placeholders found" };
1192
+ const variables = order.map((name) => ({ name, count: counts.get(name) ?? 0 }));
1193
+ const duplicates = order.filter((name) => (counts.get(name) ?? 0) > 1);
1194
+ let missing = [];
1195
+ const unused = [];
1196
+ if (providedVars !== void 0) {
1197
+ const providedSet = new Set(providedVars.map((v) => v.trim()).filter(Boolean));
1198
+ const usedSet = new Set(order);
1199
+ missing = order.filter((name) => !providedSet.has(name));
1200
+ const seenProvided = /* @__PURE__ */ new Set();
1201
+ for (const raw of providedVars) {
1202
+ const v = raw.trim();
1203
+ if (!v || usedSet.has(v) || seenProvided.has(v)) continue;
1204
+ seenProvided.add(v);
1205
+ unused.push(v);
1206
+ }
1207
+ }
1208
+ return {
1209
+ variableCount: order.length,
1210
+ variables,
1211
+ duplicates,
1212
+ missing,
1213
+ unused
1214
+ };
1215
+ }
1176
1216
 
1177
- export { MODEL_PRICING, ai_agent_exports, calculateRetryBackoffSchedule, chunkText, compressHtml, compressJson, compressMarkdown, deduplicateLines, detectPii, detectPromptInjection, detectSecrets, diffJson, estimateCost, estimateTokens, expandQuery, extractEntities, extractJson, extractKeywords, extractTables, extractUrls, flattenJson, formatFewShotExamples, lintToolSchema, mergeJson, redactPii, repairJson, rerankChunks, sanitizeHtml, scoreRelevance, summarizeForLlm, trimToTokens, unflattenJson, validateJsonSchema, vectorSimilarity };
1217
+ export { MODEL_PRICING, ai_agent_exports, calculateRetryBackoffSchedule, chunkText, compressHtml, compressJson, compressMarkdown, deduplicateLines, detectPii, detectPromptInjection, detectSecrets, diffJson, estimateCost, estimateTokens, expandQuery, extractEntities, extractJson, extractKeywords, extractPromptTemplateVariables, extractTables, extractUrls, flattenJson, formatFewShotExamples, lintToolSchema, mergeJson, redactPii, repairJson, rerankChunks, sanitizeHtml, scoreRelevance, summarizeForLlm, trimToTokens, unflattenJson, validateJsonSchema, vectorSimilarity };
@@ -27,6 +27,7 @@ __export(code_exports, {
27
27
  envToExport: () => envToExport,
28
28
  envToJson: () => envToJson,
29
29
  extractMarkdownFootnotes: () => extractMarkdownFootnotes,
30
+ extractMarkdownLinkReferences: () => extractMarkdownLinkReferences,
30
31
  extractSvgSpriteSymbols: () => extractSvgSpriteSymbols,
31
32
  formatCss: () => formatCss,
32
33
  formatGql: () => formatGql,
@@ -4268,5 +4269,63 @@ function countSqlPlaceholders(sql) {
4268
4269
  numberedDuplicates
4269
4270
  };
4270
4271
  }
4272
+ var LINK_REF_DEFINITION_REGEX = /^ {0,3}\[([^\]]+)\]:\s*(\S+)(?:\s+(?:"([^"]*)"|'([^']*)'|\(([^)]*)\)))?\s*$/;
4273
+ var LINK_REF_USAGE_REGEX = /(!?)\[([^[\]\n]*)\]\[([^[\]\n]*)\]/g;
4274
+ function normalizeLinkLabel(label) {
4275
+ return label.trim().replace(/\s+/g, " ").toLowerCase();
4276
+ }
4277
+ function extractMarkdownLinkReferences(markdown) {
4278
+ const trimmed = markdown.trim();
4279
+ if (!trimmed) return { error: "Empty input" };
4280
+ const lines = markdown.replace(/\r\n/g, "\n").split("\n");
4281
+ const definitions = [];
4282
+ const definitionsByLabel = /* @__PURE__ */ new Map();
4283
+ for (const line of lines) {
4284
+ const match = line.match(LINK_REF_DEFINITION_REGEX);
4285
+ if (!match) continue;
4286
+ const label = match[1];
4287
+ const normalized = normalizeLinkLabel(label);
4288
+ if (definitionsByLabel.has(normalized)) continue;
4289
+ const def = {
4290
+ label,
4291
+ url: match[2],
4292
+ title: match[3] ?? match[4] ?? match[5] ?? void 0
4293
+ };
4294
+ definitionsByLabel.set(normalized, def);
4295
+ definitions.push(def);
4296
+ }
4297
+ const usages = [];
4298
+ for (const m of markdown.matchAll(LINK_REF_USAGE_REGEX)) {
4299
+ const image = m[1] === "!";
4300
+ const text = m[2];
4301
+ const rawRef = m[3];
4302
+ const label = rawRef.trim() === "" ? text : rawRef;
4303
+ usages.push({ text, label, image });
4304
+ }
4305
+ if (definitions.length === 0 && usages.length === 0) {
4306
+ return { error: "No reference-style links or definitions found" };
4307
+ }
4308
+ const usedLabels = /* @__PURE__ */ new Set();
4309
+ const resolved = [];
4310
+ const unresolvedReferences = [];
4311
+ for (const usage of usages) {
4312
+ const normalized = normalizeLinkLabel(usage.label);
4313
+ const def = definitionsByLabel.get(normalized);
4314
+ if (def) {
4315
+ usedLabels.add(normalized);
4316
+ resolved.push({ ...usage, url: def.url, title: def.title });
4317
+ } else {
4318
+ unresolvedReferences.push(usage);
4319
+ }
4320
+ }
4321
+ const unusedDefinitions = definitions.filter((d) => !usedLabels.has(normalizeLinkLabel(d.label)));
4322
+ return {
4323
+ referenceCount: usages.length,
4324
+ definitionCount: definitions.length,
4325
+ resolved,
4326
+ unresolvedReferences,
4327
+ unusedDefinitions
4328
+ };
4329
+ }
4271
4330
 
4272
- export { ALL_FLAGS, CHEATSHEET, DEFAULT_COMMIT_TYPES, KNOWN_LANGUAGE_TAGS, MIME_TABLE, OPERATIONS, SQL_DEFAULT_OPTIONS, analyzeRegexGroups, auditDependencyRanges, buildDockerPull, buildDockerRun, buildGitCommand, code_exports, collapseHtmlWhitespace, collapseJsWhitespace, countProperties, countRules, countSqlPlaceholders, detectDialect, detectOperationType, detectRedos, envToExport, envToJson, extractMarkdownFootnotes, extractSvgSpriteSymbols, formatCss, formatGql, formatHtml, formatSql, getEndpointsByTag, getHtmlStats, getJsStats, getMethodColor, isValidTag, lintConventionalCommit, lookupMime, minifyCss, minifyGql, minifyHtml, minifyJs, minifySql, normalizeRef, parseCommitTrailers, parseConnectionString, parseDockerImage, parseEnv, parseGitCommand, parseGithubUrl, parseSpec, removeConsoleCalls, removeEmptyAttributes, removeHtmlComments, removeJsComments, removeRedundantAttributes, searchCheatsheet, searchEndpoints, splitStatements, testGitignorePatterns, testPattern, testRegex, validateAria, validateEditorConfig, validateEnvKey, validateFenceLanguageTags, validatePackageExports, validateTsconfig };
4331
+ export { ALL_FLAGS, CHEATSHEET, DEFAULT_COMMIT_TYPES, KNOWN_LANGUAGE_TAGS, MIME_TABLE, OPERATIONS, SQL_DEFAULT_OPTIONS, analyzeRegexGroups, auditDependencyRanges, buildDockerPull, buildDockerRun, buildGitCommand, code_exports, collapseHtmlWhitespace, collapseJsWhitespace, countProperties, countRules, countSqlPlaceholders, detectDialect, detectOperationType, detectRedos, envToExport, envToJson, extractMarkdownFootnotes, extractMarkdownLinkReferences, extractSvgSpriteSymbols, formatCss, formatGql, formatHtml, formatSql, getEndpointsByTag, getHtmlStats, getJsStats, getMethodColor, isValidTag, lintConventionalCommit, lookupMime, minifyCss, minifyGql, minifyHtml, minifyJs, minifySql, normalizeRef, parseCommitTrailers, parseConnectionString, parseDockerImage, parseEnv, parseGitCommand, parseGithubUrl, parseSpec, removeConsoleCalls, removeEmptyAttributes, removeHtmlComments, removeJsComments, removeRedundantAttributes, searchCheatsheet, searchEndpoints, splitStatements, testGitignorePatterns, testPattern, testRegex, validateAria, validateEditorConfig, validateEnvKey, validateFenceLanguageTags, validatePackageExports, validateTsconfig };
@@ -718,6 +718,41 @@ interface SqlPlaceholderResult {
718
718
  * bodies (`$$...$$`) are not specially recognized.
719
719
  */
720
720
  declare function countSqlPlaceholders(sql: string): SqlPlaceholderResult;
721
+ interface LinkReferenceUsage {
722
+ text: string;
723
+ label: string;
724
+ image: boolean;
725
+ }
726
+ interface LinkReferenceDefinition {
727
+ label: string;
728
+ url: string;
729
+ title?: string;
730
+ }
731
+ interface ResolvedLinkReference extends LinkReferenceUsage {
732
+ url: string;
733
+ title?: string;
734
+ }
735
+ interface MarkdownLinkReferenceResult {
736
+ referenceCount: number;
737
+ definitionCount: number;
738
+ resolved: ResolvedLinkReference[];
739
+ unresolvedReferences: LinkReferenceUsage[];
740
+ unusedDefinitions: LinkReferenceDefinition[];
741
+ }
742
+ /**
743
+ * Extract every reference-style Markdown link (`[text][ref]`, including the
744
+ * shortcut form `[text][]` and image references `![alt][ref]`) alongside
745
+ * its `[ref]: url "title"` definition, then flag usages with no matching
746
+ * definition and definitions that no usage ever references. Labels are
747
+ * matched case-insensitively with internal whitespace collapsed, per
748
+ * CommonMark's link-label normalization; when the same label is defined
749
+ * more than once, the first definition wins. Inline links (`[text](url)`)
750
+ * and bare shortcut references (`[ref]` with no second bracket pair) are
751
+ * out of scope.
752
+ */
753
+ declare function extractMarkdownLinkReferences(markdown: string): MarkdownLinkReferenceResult | {
754
+ error: string;
755
+ };
721
756
 
722
757
  declare const code_ALL_FLAGS: typeof ALL_FLAGS;
723
758
  type code_ApiEndpoint = ApiEndpoint;
@@ -770,10 +805,13 @@ type code_HtmlMinifyResult = HtmlMinifyResult;
770
805
  type code_JsMinifyOptions = JsMinifyOptions;
771
806
  type code_JsMinifyResult = JsMinifyResult;
772
807
  declare const code_KNOWN_LANGUAGE_TAGS: typeof KNOWN_LANGUAGE_TAGS;
808
+ type code_LinkReferenceDefinition = LinkReferenceDefinition;
809
+ type code_LinkReferenceUsage = LinkReferenceUsage;
773
810
  declare const code_MIME_TABLE: typeof MIME_TABLE;
774
811
  type code_MarkdownFootnoteDefinition = MarkdownFootnoteDefinition;
775
812
  type code_MarkdownFootnoteReference = MarkdownFootnoteReference;
776
813
  type code_MarkdownFootnoteResult = MarkdownFootnoteResult;
814
+ type code_MarkdownLinkReferenceResult = MarkdownLinkReferenceResult;
777
815
  type code_MatchResult = MatchResult;
778
816
  type code_MimeEntry = MimeEntry;
779
817
  type code_MimeLookupResult = MimeLookupResult;
@@ -792,6 +830,7 @@ type code_RegexGroupIssue = RegexGroupIssue;
792
830
  type code_RegexMatch = RegexMatch;
793
831
  type code_RegexResult = RegexResult;
794
832
  type code_RegexSuccess = RegexSuccess;
833
+ type code_ResolvedLinkReference = ResolvedLinkReference;
795
834
  declare const code_SQL_DEFAULT_OPTIONS: typeof SQL_DEFAULT_OPTIONS;
796
835
  type code_Segment = Segment;
797
836
  type code_SpecVersion = SpecVersion;
@@ -820,6 +859,7 @@ declare const code_detectRedos: typeof detectRedos;
820
859
  declare const code_envToExport: typeof envToExport;
821
860
  declare const code_envToJson: typeof envToJson;
822
861
  declare const code_extractMarkdownFootnotes: typeof extractMarkdownFootnotes;
862
+ declare const code_extractMarkdownLinkReferences: typeof extractMarkdownLinkReferences;
823
863
  declare const code_extractSvgSpriteSymbols: typeof extractSvgSpriteSymbols;
824
864
  declare const code_formatCss: typeof formatCss;
825
865
  declare const code_formatGql: typeof formatGql;
@@ -863,7 +903,7 @@ declare const code_validateFenceLanguageTags: typeof validateFenceLanguageTags;
863
903
  declare const code_validatePackageExports: typeof validatePackageExports;
864
904
  declare const code_validateTsconfig: typeof validateTsconfig;
865
905
  declare namespace code {
866
- export { code_ALL_FLAGS as ALL_FLAGS, type code_ApiEndpoint as ApiEndpoint, type code_ApiInfo as ApiInfo, type code_AriaIssue as AriaIssue, type code_AriaValidationResult as AriaValidationResult, code_CHEATSHEET as CHEATSHEET, type code_CheatsheetEntry as CheatsheetEntry, type code_CommitTrailer as CommitTrailer, type code_CommitTrailerResult as CommitTrailerResult, type code_ConnectionStringHost as ConnectionStringHost, type code_ConnectionStringResult as ConnectionStringResult, type code_ConventionalCommitFinding as ConventionalCommitFinding, type code_ConventionalCommitFooter as ConventionalCommitFooter, type code_ConventionalCommitOptions as ConventionalCommitOptions, type code_ConventionalCommitParsed as ConventionalCommitParsed, type code_ConventionalCommitResult as ConventionalCommitResult, type code_ConventionalCommitSeverity as ConventionalCommitSeverity, type code_CssResult as CssResult, code_DEFAULT_COMMIT_TYPES as DEFAULT_COMMIT_TYPES, type code_DependencyAuditDuplicate as DependencyAuditDuplicate, type code_DependencyAuditEntry as DependencyAuditEntry, type code_DependencyAuditIssue as DependencyAuditIssue, type code_DependencyAuditResult as DependencyAuditResult, type code_DependencyRangeType as DependencyRangeType, type code_DependencySection as DependencySection, type code_DockerImageRef as DockerImageRef, type code_EditorConfigIssue as EditorConfigIssue, type code_EditorConfigProperty as EditorConfigProperty, type code_EditorConfigSection as EditorConfigSection, type code_EditorConfigValidationResult as EditorConfigValidationResult, type code_EnvEntry as EnvEntry, type code_EnvParseResult as EnvParseResult, type code_ExportsIssue as ExportsIssue, type code_ExportsShape as ExportsShape, type code_ExportsValidationResult as ExportsValidationResult, type code_FenceTagIssue as FenceTagIssue, type code_FenceTagIssueType as FenceTagIssueType, type code_FenceValidationResult as FenceValidationResult, type code_GitCommandConfig as GitCommandConfig, type code_GitCommandResult as GitCommandResult, type code_GitOperation as GitOperation, type code_GithubUrlInfo as GithubUrlInfo, type code_GithubUrlType as GithubUrlType, type code_GitignoreTestResult as GitignoreTestResult, type code_GqlFormatResult as GqlFormatResult, type code_HtmlFormatResult as HtmlFormatResult, type code_HtmlMinifyOptions as HtmlMinifyOptions, type code_HtmlMinifyResult as HtmlMinifyResult, type code_JsMinifyOptions as JsMinifyOptions, type code_JsMinifyResult as JsMinifyResult, code_KNOWN_LANGUAGE_TAGS as KNOWN_LANGUAGE_TAGS, code_MIME_TABLE as MIME_TABLE, type code_MarkdownFootnoteDefinition as MarkdownFootnoteDefinition, type code_MarkdownFootnoteReference as MarkdownFootnoteReference, type code_MarkdownFootnoteResult as MarkdownFootnoteResult, type code_MatchResult as MatchResult, type code_MimeEntry as MimeEntry, type code_MimeLookupResult as MimeLookupResult, code_OPERATIONS as OPERATIONS, type code_ParsedSpec as ParsedSpec, type code_PlaceholderStyle as PlaceholderStyle, type code_RedosFinding as RedosFinding, type code_RedosResult as RedosResult, type code_RedosSeverity as RedosSeverity, type code_RegexBackreferenceInfo as RegexBackreferenceInfo, type code_RegexError as RegexError, type code_RegexFlag as RegexFlag, type code_RegexGroupAnalysis as RegexGroupAnalysis, type code_RegexGroupInfo as RegexGroupInfo, type code_RegexGroupIssue as RegexGroupIssue, type code_RegexMatch as RegexMatch, type code_RegexResult as RegexResult, type code_RegexSuccess as RegexSuccess, code_SQL_DEFAULT_OPTIONS as SQL_DEFAULT_OPTIONS, type code_Segment as Segment, type code_SpecVersion as SpecVersion, type code_SqlDialect as SqlDialect, type code_SqlFormatOptions as SqlFormatOptions, type code_SqlPlaceholder as SqlPlaceholder, type code_SqlPlaceholderResult as SqlPlaceholderResult, type code_SvgSpriteResult as SvgSpriteResult, type code_SvgSpriteSymbol as SvgSpriteSymbol, type code_TestPatternResult as TestPatternResult, type code_TsconfigIssue as TsconfigIssue, type code_TsconfigValidationResult as TsconfigValidationResult, code_analyzeRegexGroups as analyzeRegexGroups, code_auditDependencyRanges as auditDependencyRanges, code_buildDockerPull as buildDockerPull, code_buildDockerRun as buildDockerRun, code_buildGitCommand as buildGitCommand, code_collapseHtmlWhitespace as collapseHtmlWhitespace, code_collapseJsWhitespace as collapseJsWhitespace, code_countProperties as countProperties, code_countRules as countRules, code_countSqlPlaceholders as countSqlPlaceholders, code_detectDialect as detectDialect, code_detectOperationType as detectOperationType, code_detectRedos as detectRedos, code_envToExport as envToExport, code_envToJson as envToJson, code_extractMarkdownFootnotes as extractMarkdownFootnotes, code_extractSvgSpriteSymbols as extractSvgSpriteSymbols, code_formatCss as formatCss, code_formatGql as formatGql, code_formatHtml as formatHtml, code_formatSql as formatSql, code_getEndpointsByTag as getEndpointsByTag, code_getHtmlStats as getHtmlStats, code_getJsStats as getJsStats, code_getMethodColor as getMethodColor, code_isValidTag as isValidTag, code_lintConventionalCommit as lintConventionalCommit, code_lookupMime as lookupMime, code_minifyCss as minifyCss, code_minifyGql as minifyGql, code_minifyHtml as minifyHtml, code_minifyJs as minifyJs, code_minifySql as minifySql, code_normalizeRef as normalizeRef, code_parseCommitTrailers as parseCommitTrailers, code_parseConnectionString as parseConnectionString, code_parseDockerImage as parseDockerImage, code_parseEnv as parseEnv, code_parseGitCommand as parseGitCommand, code_parseGithubUrl as parseGithubUrl, code_parseSpec as parseSpec, code_removeConsoleCalls as removeConsoleCalls, code_removeEmptyAttributes as removeEmptyAttributes, code_removeHtmlComments as removeHtmlComments, code_removeJsComments as removeJsComments, code_removeRedundantAttributes as removeRedundantAttributes, code_searchCheatsheet as searchCheatsheet, code_searchEndpoints as searchEndpoints, code_splitStatements as splitStatements, code_testGitignorePatterns as testGitignorePatterns, code_testPattern as testPattern, code_testRegex as testRegex, code_validateAria as validateAria, code_validateEditorConfig as validateEditorConfig, code_validateEnvKey as validateEnvKey, code_validateFenceLanguageTags as validateFenceLanguageTags, code_validatePackageExports as validatePackageExports, code_validateTsconfig as validateTsconfig };
906
+ export { code_ALL_FLAGS as ALL_FLAGS, type code_ApiEndpoint as ApiEndpoint, type code_ApiInfo as ApiInfo, type code_AriaIssue as AriaIssue, type code_AriaValidationResult as AriaValidationResult, code_CHEATSHEET as CHEATSHEET, type code_CheatsheetEntry as CheatsheetEntry, type code_CommitTrailer as CommitTrailer, type code_CommitTrailerResult as CommitTrailerResult, type code_ConnectionStringHost as ConnectionStringHost, type code_ConnectionStringResult as ConnectionStringResult, type code_ConventionalCommitFinding as ConventionalCommitFinding, type code_ConventionalCommitFooter as ConventionalCommitFooter, type code_ConventionalCommitOptions as ConventionalCommitOptions, type code_ConventionalCommitParsed as ConventionalCommitParsed, type code_ConventionalCommitResult as ConventionalCommitResult, type code_ConventionalCommitSeverity as ConventionalCommitSeverity, type code_CssResult as CssResult, code_DEFAULT_COMMIT_TYPES as DEFAULT_COMMIT_TYPES, type code_DependencyAuditDuplicate as DependencyAuditDuplicate, type code_DependencyAuditEntry as DependencyAuditEntry, type code_DependencyAuditIssue as DependencyAuditIssue, type code_DependencyAuditResult as DependencyAuditResult, type code_DependencyRangeType as DependencyRangeType, type code_DependencySection as DependencySection, type code_DockerImageRef as DockerImageRef, type code_EditorConfigIssue as EditorConfigIssue, type code_EditorConfigProperty as EditorConfigProperty, type code_EditorConfigSection as EditorConfigSection, type code_EditorConfigValidationResult as EditorConfigValidationResult, type code_EnvEntry as EnvEntry, type code_EnvParseResult as EnvParseResult, type code_ExportsIssue as ExportsIssue, type code_ExportsShape as ExportsShape, type code_ExportsValidationResult as ExportsValidationResult, type code_FenceTagIssue as FenceTagIssue, type code_FenceTagIssueType as FenceTagIssueType, type code_FenceValidationResult as FenceValidationResult, type code_GitCommandConfig as GitCommandConfig, type code_GitCommandResult as GitCommandResult, type code_GitOperation as GitOperation, type code_GithubUrlInfo as GithubUrlInfo, type code_GithubUrlType as GithubUrlType, type code_GitignoreTestResult as GitignoreTestResult, type code_GqlFormatResult as GqlFormatResult, type code_HtmlFormatResult as HtmlFormatResult, type code_HtmlMinifyOptions as HtmlMinifyOptions, type code_HtmlMinifyResult as HtmlMinifyResult, type code_JsMinifyOptions as JsMinifyOptions, type code_JsMinifyResult as JsMinifyResult, code_KNOWN_LANGUAGE_TAGS as KNOWN_LANGUAGE_TAGS, type code_LinkReferenceDefinition as LinkReferenceDefinition, type code_LinkReferenceUsage as LinkReferenceUsage, code_MIME_TABLE as MIME_TABLE, type code_MarkdownFootnoteDefinition as MarkdownFootnoteDefinition, type code_MarkdownFootnoteReference as MarkdownFootnoteReference, type code_MarkdownFootnoteResult as MarkdownFootnoteResult, type code_MarkdownLinkReferenceResult as MarkdownLinkReferenceResult, type code_MatchResult as MatchResult, type code_MimeEntry as MimeEntry, type code_MimeLookupResult as MimeLookupResult, code_OPERATIONS as OPERATIONS, type code_ParsedSpec as ParsedSpec, type code_PlaceholderStyle as PlaceholderStyle, type code_RedosFinding as RedosFinding, type code_RedosResult as RedosResult, type code_RedosSeverity as RedosSeverity, type code_RegexBackreferenceInfo as RegexBackreferenceInfo, type code_RegexError as RegexError, type code_RegexFlag as RegexFlag, type code_RegexGroupAnalysis as RegexGroupAnalysis, type code_RegexGroupInfo as RegexGroupInfo, type code_RegexGroupIssue as RegexGroupIssue, type code_RegexMatch as RegexMatch, type code_RegexResult as RegexResult, type code_RegexSuccess as RegexSuccess, type code_ResolvedLinkReference as ResolvedLinkReference, code_SQL_DEFAULT_OPTIONS as SQL_DEFAULT_OPTIONS, type code_Segment as Segment, type code_SpecVersion as SpecVersion, type code_SqlDialect as SqlDialect, type code_SqlFormatOptions as SqlFormatOptions, type code_SqlPlaceholder as SqlPlaceholder, type code_SqlPlaceholderResult as SqlPlaceholderResult, type code_SvgSpriteResult as SvgSpriteResult, type code_SvgSpriteSymbol as SvgSpriteSymbol, type code_TestPatternResult as TestPatternResult, type code_TsconfigIssue as TsconfigIssue, type code_TsconfigValidationResult as TsconfigValidationResult, code_analyzeRegexGroups as analyzeRegexGroups, code_auditDependencyRanges as auditDependencyRanges, code_buildDockerPull as buildDockerPull, code_buildDockerRun as buildDockerRun, code_buildGitCommand as buildGitCommand, code_collapseHtmlWhitespace as collapseHtmlWhitespace, code_collapseJsWhitespace as collapseJsWhitespace, code_countProperties as countProperties, code_countRules as countRules, code_countSqlPlaceholders as countSqlPlaceholders, code_detectDialect as detectDialect, code_detectOperationType as detectOperationType, code_detectRedos as detectRedos, code_envToExport as envToExport, code_envToJson as envToJson, code_extractMarkdownFootnotes as extractMarkdownFootnotes, code_extractMarkdownLinkReferences as extractMarkdownLinkReferences, code_extractSvgSpriteSymbols as extractSvgSpriteSymbols, code_formatCss as formatCss, code_formatGql as formatGql, code_formatHtml as formatHtml, code_formatSql as formatSql, code_getEndpointsByTag as getEndpointsByTag, code_getHtmlStats as getHtmlStats, code_getJsStats as getJsStats, code_getMethodColor as getMethodColor, code_isValidTag as isValidTag, code_lintConventionalCommit as lintConventionalCommit, code_lookupMime as lookupMime, code_minifyCss as minifyCss, code_minifyGql as minifyGql, code_minifyHtml as minifyHtml, code_minifyJs as minifyJs, code_minifySql as minifySql, code_normalizeRef as normalizeRef, code_parseCommitTrailers as parseCommitTrailers, code_parseConnectionString as parseConnectionString, code_parseDockerImage as parseDockerImage, code_parseEnv as parseEnv, code_parseGitCommand as parseGitCommand, code_parseGithubUrl as parseGithubUrl, code_parseSpec as parseSpec, code_removeConsoleCalls as removeConsoleCalls, code_removeEmptyAttributes as removeEmptyAttributes, code_removeHtmlComments as removeHtmlComments, code_removeJsComments as removeJsComments, code_removeRedundantAttributes as removeRedundantAttributes, code_searchCheatsheet as searchCheatsheet, code_searchEndpoints as searchEndpoints, code_splitStatements as splitStatements, code_testGitignorePatterns as testGitignorePatterns, code_testPattern as testPattern, code_testRegex as testRegex, code_validateAria as validateAria, code_validateEditorConfig as validateEditorConfig, code_validateEnvKey as validateEnvKey, code_validateFenceLanguageTags as validateFenceLanguageTags, code_validatePackageExports as validatePackageExports, code_validateTsconfig as validateTsconfig };
867
907
  }
868
908
 
869
- export { type MarkdownFootnoteDefinition as $, ALL_FLAGS as A, type EditorConfigValidationResult as B, CHEATSHEET as C, DEFAULT_COMMIT_TYPES as D, type EditorConfigIssue as E, type EnvEntry as F, type EnvParseResult as G, type ExportsIssue as H, type ExportsShape as I, type ExportsValidationResult as J, type FenceTagIssue as K, type FenceTagIssueType as L, type FenceValidationResult as M, type GitCommandConfig as N, type GitCommandResult as O, type GitOperation as P, type GithubUrlInfo as Q, type GithubUrlType as R, type GitignoreTestResult as S, type GqlFormatResult as T, type HtmlFormatResult as U, type HtmlMinifyOptions as V, type HtmlMinifyResult as W, type JsMinifyOptions as X, type JsMinifyResult as Y, KNOWN_LANGUAGE_TAGS as Z, MIME_TABLE as _, type ApiEndpoint as a, minifyJs as a$, type MarkdownFootnoteReference as a0, type MarkdownFootnoteResult as a1, type MatchResult as a2, type MimeEntry as a3, type MimeLookupResult as a4, OPERATIONS as a5, type ParsedSpec as a6, type PlaceholderStyle as a7, type RedosFinding as a8, type RedosResult as a9, buildGitCommand as aA, collapseHtmlWhitespace as aB, collapseJsWhitespace as aC, countProperties as aD, countRules as aE, countSqlPlaceholders as aF, detectDialect as aG, detectOperationType as aH, detectRedos as aI, envToExport as aJ, envToJson as aK, extractMarkdownFootnotes as aL, extractSvgSpriteSymbols as aM, formatCss as aN, formatGql as aO, formatHtml as aP, formatSql as aQ, getEndpointsByTag as aR, getHtmlStats as aS, getJsStats as aT, getMethodColor as aU, isValidTag as aV, lintConventionalCommit as aW, lookupMime as aX, minifyCss as aY, minifyGql as aZ, minifyHtml as a_, type RedosSeverity as aa, type RegexBackreferenceInfo as ab, type RegexError as ac, type RegexFlag as ad, type RegexGroupAnalysis as ae, type RegexGroupInfo as af, type RegexGroupIssue as ag, type RegexMatch as ah, type RegexResult as ai, type RegexSuccess as aj, SQL_DEFAULT_OPTIONS as ak, type Segment as al, type SpecVersion as am, type SqlDialect as an, type SqlFormatOptions as ao, type SqlPlaceholder as ap, type SqlPlaceholderResult as aq, type SvgSpriteResult as ar, type SvgSpriteSymbol as as, type TestPatternResult as at, type TsconfigIssue as au, type TsconfigValidationResult as av, analyzeRegexGroups as aw, auditDependencyRanges as ax, buildDockerPull as ay, buildDockerRun as az, type ApiInfo as b, minifySql as b0, normalizeRef as b1, parseCommitTrailers as b2, parseConnectionString as b3, parseDockerImage as b4, parseEnv as b5, parseGitCommand as b6, parseGithubUrl as b7, parseSpec as b8, removeConsoleCalls as b9, removeEmptyAttributes as ba, removeHtmlComments as bb, removeJsComments as bc, removeRedundantAttributes as bd, searchCheatsheet as be, searchEndpoints as bf, splitStatements as bg, testGitignorePatterns as bh, testPattern as bi, testRegex as bj, validateAria as bk, validateEditorConfig as bl, validateEnvKey as bm, validateFenceLanguageTags as bn, validatePackageExports as bo, validateTsconfig as bp, code as c, type AriaIssue as d, type AriaValidationResult as e, type CheatsheetEntry as f, type CommitTrailer as g, type CommitTrailerResult as h, type ConnectionStringHost as i, type ConnectionStringResult as j, type ConventionalCommitFinding as k, type ConventionalCommitFooter as l, type ConventionalCommitOptions as m, type ConventionalCommitParsed as n, type ConventionalCommitResult as o, type ConventionalCommitSeverity as p, type CssResult as q, type DependencyAuditDuplicate as r, type DependencyAuditEntry as s, type DependencyAuditIssue as t, type DependencyAuditResult as u, type DependencyRangeType as v, type DependencySection as w, type DockerImageRef as x, type EditorConfigProperty as y, type EditorConfigSection as z };
909
+ export { type LinkReferenceUsage as $, ALL_FLAGS as A, type EditorConfigValidationResult as B, CHEATSHEET as C, DEFAULT_COMMIT_TYPES as D, type EditorConfigIssue as E, type EnvEntry as F, type EnvParseResult as G, type ExportsIssue as H, type ExportsShape as I, type ExportsValidationResult as J, type FenceTagIssue as K, type FenceTagIssueType as L, type FenceValidationResult as M, type GitCommandConfig as N, type GitCommandResult as O, type GitOperation as P, type GithubUrlInfo as Q, type GithubUrlType as R, type GitignoreTestResult as S, type GqlFormatResult as T, type HtmlFormatResult as U, type HtmlMinifyOptions as V, type HtmlMinifyResult as W, type JsMinifyOptions as X, type JsMinifyResult as Y, KNOWN_LANGUAGE_TAGS as Z, type LinkReferenceDefinition as _, type ApiEndpoint as a, lintConventionalCommit as a$, MIME_TABLE as a0, type MarkdownFootnoteDefinition as a1, type MarkdownFootnoteReference as a2, type MarkdownFootnoteResult as a3, type MarkdownLinkReferenceResult as a4, type MatchResult as a5, type MimeEntry as a6, type MimeLookupResult as a7, OPERATIONS as a8, type ParsedSpec as a9, analyzeRegexGroups as aA, auditDependencyRanges as aB, buildDockerPull as aC, buildDockerRun as aD, buildGitCommand as aE, collapseHtmlWhitespace as aF, collapseJsWhitespace as aG, countProperties as aH, countRules as aI, countSqlPlaceholders as aJ, detectDialect as aK, detectOperationType as aL, detectRedos as aM, envToExport as aN, envToJson as aO, extractMarkdownFootnotes as aP, extractMarkdownLinkReferences as aQ, extractSvgSpriteSymbols as aR, formatCss as aS, formatGql as aT, formatHtml as aU, formatSql as aV, getEndpointsByTag as aW, getHtmlStats as aX, getJsStats as aY, getMethodColor as aZ, isValidTag as a_, type PlaceholderStyle as aa, type RedosFinding as ab, type RedosResult as ac, type RedosSeverity as ad, type RegexBackreferenceInfo as ae, type RegexError as af, type RegexFlag as ag, type RegexGroupAnalysis as ah, type RegexGroupInfo as ai, type RegexGroupIssue as aj, type RegexMatch as ak, type RegexResult as al, type RegexSuccess as am, type ResolvedLinkReference as an, SQL_DEFAULT_OPTIONS as ao, type Segment as ap, type SpecVersion as aq, type SqlDialect as ar, type SqlFormatOptions as as, type SqlPlaceholder as at, type SqlPlaceholderResult as au, type SvgSpriteResult as av, type SvgSpriteSymbol as aw, type TestPatternResult as ax, type TsconfigIssue as ay, type TsconfigValidationResult as az, type ApiInfo as b, lookupMime as b0, minifyCss as b1, minifyGql as b2, minifyHtml as b3, minifyJs as b4, minifySql as b5, normalizeRef as b6, parseCommitTrailers as b7, parseConnectionString as b8, parseDockerImage as b9, parseEnv as ba, parseGitCommand as bb, parseGithubUrl as bc, parseSpec as bd, removeConsoleCalls as be, removeEmptyAttributes as bf, removeHtmlComments as bg, removeJsComments as bh, removeRedundantAttributes as bi, searchCheatsheet as bj, searchEndpoints as bk, splitStatements as bl, testGitignorePatterns as bm, testPattern as bn, testRegex as bo, validateAria as bp, validateEditorConfig as bq, validateEnvKey as br, validateFenceLanguageTags as bs, validatePackageExports as bt, validateTsconfig as bu, code as c, type AriaIssue as d, type AriaValidationResult as e, type CheatsheetEntry as f, type CommitTrailer as g, type CommitTrailerResult as h, type ConnectionStringHost as i, type ConnectionStringResult as j, type ConventionalCommitFinding as k, type ConventionalCommitFooter as l, type ConventionalCommitOptions as m, type ConventionalCommitParsed as n, type ConventionalCommitResult as o, type ConventionalCommitSeverity as p, type CssResult as q, type DependencyAuditDuplicate as r, type DependencyAuditEntry as s, type DependencyAuditIssue as t, type DependencyAuditResult as u, type DependencyRangeType as v, type DependencySection as w, type DockerImageRef as x, type EditorConfigProperty as y, type EditorConfigSection as z };
@@ -718,6 +718,41 @@ interface SqlPlaceholderResult {
718
718
  * bodies (`$$...$$`) are not specially recognized.
719
719
  */
720
720
  declare function countSqlPlaceholders(sql: string): SqlPlaceholderResult;
721
+ interface LinkReferenceUsage {
722
+ text: string;
723
+ label: string;
724
+ image: boolean;
725
+ }
726
+ interface LinkReferenceDefinition {
727
+ label: string;
728
+ url: string;
729
+ title?: string;
730
+ }
731
+ interface ResolvedLinkReference extends LinkReferenceUsage {
732
+ url: string;
733
+ title?: string;
734
+ }
735
+ interface MarkdownLinkReferenceResult {
736
+ referenceCount: number;
737
+ definitionCount: number;
738
+ resolved: ResolvedLinkReference[];
739
+ unresolvedReferences: LinkReferenceUsage[];
740
+ unusedDefinitions: LinkReferenceDefinition[];
741
+ }
742
+ /**
743
+ * Extract every reference-style Markdown link (`[text][ref]`, including the
744
+ * shortcut form `[text][]` and image references `![alt][ref]`) alongside
745
+ * its `[ref]: url "title"` definition, then flag usages with no matching
746
+ * definition and definitions that no usage ever references. Labels are
747
+ * matched case-insensitively with internal whitespace collapsed, per
748
+ * CommonMark's link-label normalization; when the same label is defined
749
+ * more than once, the first definition wins. Inline links (`[text](url)`)
750
+ * and bare shortcut references (`[ref]` with no second bracket pair) are
751
+ * out of scope.
752
+ */
753
+ declare function extractMarkdownLinkReferences(markdown: string): MarkdownLinkReferenceResult | {
754
+ error: string;
755
+ };
721
756
 
722
757
  declare const code_ALL_FLAGS: typeof ALL_FLAGS;
723
758
  type code_ApiEndpoint = ApiEndpoint;
@@ -770,10 +805,13 @@ type code_HtmlMinifyResult = HtmlMinifyResult;
770
805
  type code_JsMinifyOptions = JsMinifyOptions;
771
806
  type code_JsMinifyResult = JsMinifyResult;
772
807
  declare const code_KNOWN_LANGUAGE_TAGS: typeof KNOWN_LANGUAGE_TAGS;
808
+ type code_LinkReferenceDefinition = LinkReferenceDefinition;
809
+ type code_LinkReferenceUsage = LinkReferenceUsage;
773
810
  declare const code_MIME_TABLE: typeof MIME_TABLE;
774
811
  type code_MarkdownFootnoteDefinition = MarkdownFootnoteDefinition;
775
812
  type code_MarkdownFootnoteReference = MarkdownFootnoteReference;
776
813
  type code_MarkdownFootnoteResult = MarkdownFootnoteResult;
814
+ type code_MarkdownLinkReferenceResult = MarkdownLinkReferenceResult;
777
815
  type code_MatchResult = MatchResult;
778
816
  type code_MimeEntry = MimeEntry;
779
817
  type code_MimeLookupResult = MimeLookupResult;
@@ -792,6 +830,7 @@ type code_RegexGroupIssue = RegexGroupIssue;
792
830
  type code_RegexMatch = RegexMatch;
793
831
  type code_RegexResult = RegexResult;
794
832
  type code_RegexSuccess = RegexSuccess;
833
+ type code_ResolvedLinkReference = ResolvedLinkReference;
795
834
  declare const code_SQL_DEFAULT_OPTIONS: typeof SQL_DEFAULT_OPTIONS;
796
835
  type code_Segment = Segment;
797
836
  type code_SpecVersion = SpecVersion;
@@ -820,6 +859,7 @@ declare const code_detectRedos: typeof detectRedos;
820
859
  declare const code_envToExport: typeof envToExport;
821
860
  declare const code_envToJson: typeof envToJson;
822
861
  declare const code_extractMarkdownFootnotes: typeof extractMarkdownFootnotes;
862
+ declare const code_extractMarkdownLinkReferences: typeof extractMarkdownLinkReferences;
823
863
  declare const code_extractSvgSpriteSymbols: typeof extractSvgSpriteSymbols;
824
864
  declare const code_formatCss: typeof formatCss;
825
865
  declare const code_formatGql: typeof formatGql;
@@ -863,7 +903,7 @@ declare const code_validateFenceLanguageTags: typeof validateFenceLanguageTags;
863
903
  declare const code_validatePackageExports: typeof validatePackageExports;
864
904
  declare const code_validateTsconfig: typeof validateTsconfig;
865
905
  declare namespace code {
866
- export { code_ALL_FLAGS as ALL_FLAGS, type code_ApiEndpoint as ApiEndpoint, type code_ApiInfo as ApiInfo, type code_AriaIssue as AriaIssue, type code_AriaValidationResult as AriaValidationResult, code_CHEATSHEET as CHEATSHEET, type code_CheatsheetEntry as CheatsheetEntry, type code_CommitTrailer as CommitTrailer, type code_CommitTrailerResult as CommitTrailerResult, type code_ConnectionStringHost as ConnectionStringHost, type code_ConnectionStringResult as ConnectionStringResult, type code_ConventionalCommitFinding as ConventionalCommitFinding, type code_ConventionalCommitFooter as ConventionalCommitFooter, type code_ConventionalCommitOptions as ConventionalCommitOptions, type code_ConventionalCommitParsed as ConventionalCommitParsed, type code_ConventionalCommitResult as ConventionalCommitResult, type code_ConventionalCommitSeverity as ConventionalCommitSeverity, type code_CssResult as CssResult, code_DEFAULT_COMMIT_TYPES as DEFAULT_COMMIT_TYPES, type code_DependencyAuditDuplicate as DependencyAuditDuplicate, type code_DependencyAuditEntry as DependencyAuditEntry, type code_DependencyAuditIssue as DependencyAuditIssue, type code_DependencyAuditResult as DependencyAuditResult, type code_DependencyRangeType as DependencyRangeType, type code_DependencySection as DependencySection, type code_DockerImageRef as DockerImageRef, type code_EditorConfigIssue as EditorConfigIssue, type code_EditorConfigProperty as EditorConfigProperty, type code_EditorConfigSection as EditorConfigSection, type code_EditorConfigValidationResult as EditorConfigValidationResult, type code_EnvEntry as EnvEntry, type code_EnvParseResult as EnvParseResult, type code_ExportsIssue as ExportsIssue, type code_ExportsShape as ExportsShape, type code_ExportsValidationResult as ExportsValidationResult, type code_FenceTagIssue as FenceTagIssue, type code_FenceTagIssueType as FenceTagIssueType, type code_FenceValidationResult as FenceValidationResult, type code_GitCommandConfig as GitCommandConfig, type code_GitCommandResult as GitCommandResult, type code_GitOperation as GitOperation, type code_GithubUrlInfo as GithubUrlInfo, type code_GithubUrlType as GithubUrlType, type code_GitignoreTestResult as GitignoreTestResult, type code_GqlFormatResult as GqlFormatResult, type code_HtmlFormatResult as HtmlFormatResult, type code_HtmlMinifyOptions as HtmlMinifyOptions, type code_HtmlMinifyResult as HtmlMinifyResult, type code_JsMinifyOptions as JsMinifyOptions, type code_JsMinifyResult as JsMinifyResult, code_KNOWN_LANGUAGE_TAGS as KNOWN_LANGUAGE_TAGS, code_MIME_TABLE as MIME_TABLE, type code_MarkdownFootnoteDefinition as MarkdownFootnoteDefinition, type code_MarkdownFootnoteReference as MarkdownFootnoteReference, type code_MarkdownFootnoteResult as MarkdownFootnoteResult, type code_MatchResult as MatchResult, type code_MimeEntry as MimeEntry, type code_MimeLookupResult as MimeLookupResult, code_OPERATIONS as OPERATIONS, type code_ParsedSpec as ParsedSpec, type code_PlaceholderStyle as PlaceholderStyle, type code_RedosFinding as RedosFinding, type code_RedosResult as RedosResult, type code_RedosSeverity as RedosSeverity, type code_RegexBackreferenceInfo as RegexBackreferenceInfo, type code_RegexError as RegexError, type code_RegexFlag as RegexFlag, type code_RegexGroupAnalysis as RegexGroupAnalysis, type code_RegexGroupInfo as RegexGroupInfo, type code_RegexGroupIssue as RegexGroupIssue, type code_RegexMatch as RegexMatch, type code_RegexResult as RegexResult, type code_RegexSuccess as RegexSuccess, code_SQL_DEFAULT_OPTIONS as SQL_DEFAULT_OPTIONS, type code_Segment as Segment, type code_SpecVersion as SpecVersion, type code_SqlDialect as SqlDialect, type code_SqlFormatOptions as SqlFormatOptions, type code_SqlPlaceholder as SqlPlaceholder, type code_SqlPlaceholderResult as SqlPlaceholderResult, type code_SvgSpriteResult as SvgSpriteResult, type code_SvgSpriteSymbol as SvgSpriteSymbol, type code_TestPatternResult as TestPatternResult, type code_TsconfigIssue as TsconfigIssue, type code_TsconfigValidationResult as TsconfigValidationResult, code_analyzeRegexGroups as analyzeRegexGroups, code_auditDependencyRanges as auditDependencyRanges, code_buildDockerPull as buildDockerPull, code_buildDockerRun as buildDockerRun, code_buildGitCommand as buildGitCommand, code_collapseHtmlWhitespace as collapseHtmlWhitespace, code_collapseJsWhitespace as collapseJsWhitespace, code_countProperties as countProperties, code_countRules as countRules, code_countSqlPlaceholders as countSqlPlaceholders, code_detectDialect as detectDialect, code_detectOperationType as detectOperationType, code_detectRedos as detectRedos, code_envToExport as envToExport, code_envToJson as envToJson, code_extractMarkdownFootnotes as extractMarkdownFootnotes, code_extractSvgSpriteSymbols as extractSvgSpriteSymbols, code_formatCss as formatCss, code_formatGql as formatGql, code_formatHtml as formatHtml, code_formatSql as formatSql, code_getEndpointsByTag as getEndpointsByTag, code_getHtmlStats as getHtmlStats, code_getJsStats as getJsStats, code_getMethodColor as getMethodColor, code_isValidTag as isValidTag, code_lintConventionalCommit as lintConventionalCommit, code_lookupMime as lookupMime, code_minifyCss as minifyCss, code_minifyGql as minifyGql, code_minifyHtml as minifyHtml, code_minifyJs as minifyJs, code_minifySql as minifySql, code_normalizeRef as normalizeRef, code_parseCommitTrailers as parseCommitTrailers, code_parseConnectionString as parseConnectionString, code_parseDockerImage as parseDockerImage, code_parseEnv as parseEnv, code_parseGitCommand as parseGitCommand, code_parseGithubUrl as parseGithubUrl, code_parseSpec as parseSpec, code_removeConsoleCalls as removeConsoleCalls, code_removeEmptyAttributes as removeEmptyAttributes, code_removeHtmlComments as removeHtmlComments, code_removeJsComments as removeJsComments, code_removeRedundantAttributes as removeRedundantAttributes, code_searchCheatsheet as searchCheatsheet, code_searchEndpoints as searchEndpoints, code_splitStatements as splitStatements, code_testGitignorePatterns as testGitignorePatterns, code_testPattern as testPattern, code_testRegex as testRegex, code_validateAria as validateAria, code_validateEditorConfig as validateEditorConfig, code_validateEnvKey as validateEnvKey, code_validateFenceLanguageTags as validateFenceLanguageTags, code_validatePackageExports as validatePackageExports, code_validateTsconfig as validateTsconfig };
906
+ export { code_ALL_FLAGS as ALL_FLAGS, type code_ApiEndpoint as ApiEndpoint, type code_ApiInfo as ApiInfo, type code_AriaIssue as AriaIssue, type code_AriaValidationResult as AriaValidationResult, code_CHEATSHEET as CHEATSHEET, type code_CheatsheetEntry as CheatsheetEntry, type code_CommitTrailer as CommitTrailer, type code_CommitTrailerResult as CommitTrailerResult, type code_ConnectionStringHost as ConnectionStringHost, type code_ConnectionStringResult as ConnectionStringResult, type code_ConventionalCommitFinding as ConventionalCommitFinding, type code_ConventionalCommitFooter as ConventionalCommitFooter, type code_ConventionalCommitOptions as ConventionalCommitOptions, type code_ConventionalCommitParsed as ConventionalCommitParsed, type code_ConventionalCommitResult as ConventionalCommitResult, type code_ConventionalCommitSeverity as ConventionalCommitSeverity, type code_CssResult as CssResult, code_DEFAULT_COMMIT_TYPES as DEFAULT_COMMIT_TYPES, type code_DependencyAuditDuplicate as DependencyAuditDuplicate, type code_DependencyAuditEntry as DependencyAuditEntry, type code_DependencyAuditIssue as DependencyAuditIssue, type code_DependencyAuditResult as DependencyAuditResult, type code_DependencyRangeType as DependencyRangeType, type code_DependencySection as DependencySection, type code_DockerImageRef as DockerImageRef, type code_EditorConfigIssue as EditorConfigIssue, type code_EditorConfigProperty as EditorConfigProperty, type code_EditorConfigSection as EditorConfigSection, type code_EditorConfigValidationResult as EditorConfigValidationResult, type code_EnvEntry as EnvEntry, type code_EnvParseResult as EnvParseResult, type code_ExportsIssue as ExportsIssue, type code_ExportsShape as ExportsShape, type code_ExportsValidationResult as ExportsValidationResult, type code_FenceTagIssue as FenceTagIssue, type code_FenceTagIssueType as FenceTagIssueType, type code_FenceValidationResult as FenceValidationResult, type code_GitCommandConfig as GitCommandConfig, type code_GitCommandResult as GitCommandResult, type code_GitOperation as GitOperation, type code_GithubUrlInfo as GithubUrlInfo, type code_GithubUrlType as GithubUrlType, type code_GitignoreTestResult as GitignoreTestResult, type code_GqlFormatResult as GqlFormatResult, type code_HtmlFormatResult as HtmlFormatResult, type code_HtmlMinifyOptions as HtmlMinifyOptions, type code_HtmlMinifyResult as HtmlMinifyResult, type code_JsMinifyOptions as JsMinifyOptions, type code_JsMinifyResult as JsMinifyResult, code_KNOWN_LANGUAGE_TAGS as KNOWN_LANGUAGE_TAGS, type code_LinkReferenceDefinition as LinkReferenceDefinition, type code_LinkReferenceUsage as LinkReferenceUsage, code_MIME_TABLE as MIME_TABLE, type code_MarkdownFootnoteDefinition as MarkdownFootnoteDefinition, type code_MarkdownFootnoteReference as MarkdownFootnoteReference, type code_MarkdownFootnoteResult as MarkdownFootnoteResult, type code_MarkdownLinkReferenceResult as MarkdownLinkReferenceResult, type code_MatchResult as MatchResult, type code_MimeEntry as MimeEntry, type code_MimeLookupResult as MimeLookupResult, code_OPERATIONS as OPERATIONS, type code_ParsedSpec as ParsedSpec, type code_PlaceholderStyle as PlaceholderStyle, type code_RedosFinding as RedosFinding, type code_RedosResult as RedosResult, type code_RedosSeverity as RedosSeverity, type code_RegexBackreferenceInfo as RegexBackreferenceInfo, type code_RegexError as RegexError, type code_RegexFlag as RegexFlag, type code_RegexGroupAnalysis as RegexGroupAnalysis, type code_RegexGroupInfo as RegexGroupInfo, type code_RegexGroupIssue as RegexGroupIssue, type code_RegexMatch as RegexMatch, type code_RegexResult as RegexResult, type code_RegexSuccess as RegexSuccess, type code_ResolvedLinkReference as ResolvedLinkReference, code_SQL_DEFAULT_OPTIONS as SQL_DEFAULT_OPTIONS, type code_Segment as Segment, type code_SpecVersion as SpecVersion, type code_SqlDialect as SqlDialect, type code_SqlFormatOptions as SqlFormatOptions, type code_SqlPlaceholder as SqlPlaceholder, type code_SqlPlaceholderResult as SqlPlaceholderResult, type code_SvgSpriteResult as SvgSpriteResult, type code_SvgSpriteSymbol as SvgSpriteSymbol, type code_TestPatternResult as TestPatternResult, type code_TsconfigIssue as TsconfigIssue, type code_TsconfigValidationResult as TsconfigValidationResult, code_analyzeRegexGroups as analyzeRegexGroups, code_auditDependencyRanges as auditDependencyRanges, code_buildDockerPull as buildDockerPull, code_buildDockerRun as buildDockerRun, code_buildGitCommand as buildGitCommand, code_collapseHtmlWhitespace as collapseHtmlWhitespace, code_collapseJsWhitespace as collapseJsWhitespace, code_countProperties as countProperties, code_countRules as countRules, code_countSqlPlaceholders as countSqlPlaceholders, code_detectDialect as detectDialect, code_detectOperationType as detectOperationType, code_detectRedos as detectRedos, code_envToExport as envToExport, code_envToJson as envToJson, code_extractMarkdownFootnotes as extractMarkdownFootnotes, code_extractMarkdownLinkReferences as extractMarkdownLinkReferences, code_extractSvgSpriteSymbols as extractSvgSpriteSymbols, code_formatCss as formatCss, code_formatGql as formatGql, code_formatHtml as formatHtml, code_formatSql as formatSql, code_getEndpointsByTag as getEndpointsByTag, code_getHtmlStats as getHtmlStats, code_getJsStats as getJsStats, code_getMethodColor as getMethodColor, code_isValidTag as isValidTag, code_lintConventionalCommit as lintConventionalCommit, code_lookupMime as lookupMime, code_minifyCss as minifyCss, code_minifyGql as minifyGql, code_minifyHtml as minifyHtml, code_minifyJs as minifyJs, code_minifySql as minifySql, code_normalizeRef as normalizeRef, code_parseCommitTrailers as parseCommitTrailers, code_parseConnectionString as parseConnectionString, code_parseDockerImage as parseDockerImage, code_parseEnv as parseEnv, code_parseGitCommand as parseGitCommand, code_parseGithubUrl as parseGithubUrl, code_parseSpec as parseSpec, code_removeConsoleCalls as removeConsoleCalls, code_removeEmptyAttributes as removeEmptyAttributes, code_removeHtmlComments as removeHtmlComments, code_removeJsComments as removeJsComments, code_removeRedundantAttributes as removeRedundantAttributes, code_searchCheatsheet as searchCheatsheet, code_searchEndpoints as searchEndpoints, code_splitStatements as splitStatements, code_testGitignorePatterns as testGitignorePatterns, code_testPattern as testPattern, code_testRegex as testRegex, code_validateAria as validateAria, code_validateEditorConfig as validateEditorConfig, code_validateEnvKey as validateEnvKey, code_validateFenceLanguageTags as validateFenceLanguageTags, code_validatePackageExports as validatePackageExports, code_validateTsconfig as validateTsconfig };
867
907
  }
868
908
 
869
- export { type MarkdownFootnoteDefinition as $, ALL_FLAGS as A, type EditorConfigValidationResult as B, CHEATSHEET as C, DEFAULT_COMMIT_TYPES as D, type EditorConfigIssue as E, type EnvEntry as F, type EnvParseResult as G, type ExportsIssue as H, type ExportsShape as I, type ExportsValidationResult as J, type FenceTagIssue as K, type FenceTagIssueType as L, type FenceValidationResult as M, type GitCommandConfig as N, type GitCommandResult as O, type GitOperation as P, type GithubUrlInfo as Q, type GithubUrlType as R, type GitignoreTestResult as S, type GqlFormatResult as T, type HtmlFormatResult as U, type HtmlMinifyOptions as V, type HtmlMinifyResult as W, type JsMinifyOptions as X, type JsMinifyResult as Y, KNOWN_LANGUAGE_TAGS as Z, MIME_TABLE as _, type ApiEndpoint as a, minifyJs as a$, type MarkdownFootnoteReference as a0, type MarkdownFootnoteResult as a1, type MatchResult as a2, type MimeEntry as a3, type MimeLookupResult as a4, OPERATIONS as a5, type ParsedSpec as a6, type PlaceholderStyle as a7, type RedosFinding as a8, type RedosResult as a9, buildGitCommand as aA, collapseHtmlWhitespace as aB, collapseJsWhitespace as aC, countProperties as aD, countRules as aE, countSqlPlaceholders as aF, detectDialect as aG, detectOperationType as aH, detectRedos as aI, envToExport as aJ, envToJson as aK, extractMarkdownFootnotes as aL, extractSvgSpriteSymbols as aM, formatCss as aN, formatGql as aO, formatHtml as aP, formatSql as aQ, getEndpointsByTag as aR, getHtmlStats as aS, getJsStats as aT, getMethodColor as aU, isValidTag as aV, lintConventionalCommit as aW, lookupMime as aX, minifyCss as aY, minifyGql as aZ, minifyHtml as a_, type RedosSeverity as aa, type RegexBackreferenceInfo as ab, type RegexError as ac, type RegexFlag as ad, type RegexGroupAnalysis as ae, type RegexGroupInfo as af, type RegexGroupIssue as ag, type RegexMatch as ah, type RegexResult as ai, type RegexSuccess as aj, SQL_DEFAULT_OPTIONS as ak, type Segment as al, type SpecVersion as am, type SqlDialect as an, type SqlFormatOptions as ao, type SqlPlaceholder as ap, type SqlPlaceholderResult as aq, type SvgSpriteResult as ar, type SvgSpriteSymbol as as, type TestPatternResult as at, type TsconfigIssue as au, type TsconfigValidationResult as av, analyzeRegexGroups as aw, auditDependencyRanges as ax, buildDockerPull as ay, buildDockerRun as az, type ApiInfo as b, minifySql as b0, normalizeRef as b1, parseCommitTrailers as b2, parseConnectionString as b3, parseDockerImage as b4, parseEnv as b5, parseGitCommand as b6, parseGithubUrl as b7, parseSpec as b8, removeConsoleCalls as b9, removeEmptyAttributes as ba, removeHtmlComments as bb, removeJsComments as bc, removeRedundantAttributes as bd, searchCheatsheet as be, searchEndpoints as bf, splitStatements as bg, testGitignorePatterns as bh, testPattern as bi, testRegex as bj, validateAria as bk, validateEditorConfig as bl, validateEnvKey as bm, validateFenceLanguageTags as bn, validatePackageExports as bo, validateTsconfig as bp, code as c, type AriaIssue as d, type AriaValidationResult as e, type CheatsheetEntry as f, type CommitTrailer as g, type CommitTrailerResult as h, type ConnectionStringHost as i, type ConnectionStringResult as j, type ConventionalCommitFinding as k, type ConventionalCommitFooter as l, type ConventionalCommitOptions as m, type ConventionalCommitParsed as n, type ConventionalCommitResult as o, type ConventionalCommitSeverity as p, type CssResult as q, type DependencyAuditDuplicate as r, type DependencyAuditEntry as s, type DependencyAuditIssue as t, type DependencyAuditResult as u, type DependencyRangeType as v, type DependencySection as w, type DockerImageRef as x, type EditorConfigProperty as y, type EditorConfigSection as z };
909
+ export { type LinkReferenceUsage as $, ALL_FLAGS as A, type EditorConfigValidationResult as B, CHEATSHEET as C, DEFAULT_COMMIT_TYPES as D, type EditorConfigIssue as E, type EnvEntry as F, type EnvParseResult as G, type ExportsIssue as H, type ExportsShape as I, type ExportsValidationResult as J, type FenceTagIssue as K, type FenceTagIssueType as L, type FenceValidationResult as M, type GitCommandConfig as N, type GitCommandResult as O, type GitOperation as P, type GithubUrlInfo as Q, type GithubUrlType as R, type GitignoreTestResult as S, type GqlFormatResult as T, type HtmlFormatResult as U, type HtmlMinifyOptions as V, type HtmlMinifyResult as W, type JsMinifyOptions as X, type JsMinifyResult as Y, KNOWN_LANGUAGE_TAGS as Z, type LinkReferenceDefinition as _, type ApiEndpoint as a, lintConventionalCommit as a$, MIME_TABLE as a0, type MarkdownFootnoteDefinition as a1, type MarkdownFootnoteReference as a2, type MarkdownFootnoteResult as a3, type MarkdownLinkReferenceResult as a4, type MatchResult as a5, type MimeEntry as a6, type MimeLookupResult as a7, OPERATIONS as a8, type ParsedSpec as a9, analyzeRegexGroups as aA, auditDependencyRanges as aB, buildDockerPull as aC, buildDockerRun as aD, buildGitCommand as aE, collapseHtmlWhitespace as aF, collapseJsWhitespace as aG, countProperties as aH, countRules as aI, countSqlPlaceholders as aJ, detectDialect as aK, detectOperationType as aL, detectRedos as aM, envToExport as aN, envToJson as aO, extractMarkdownFootnotes as aP, extractMarkdownLinkReferences as aQ, extractSvgSpriteSymbols as aR, formatCss as aS, formatGql as aT, formatHtml as aU, formatSql as aV, getEndpointsByTag as aW, getHtmlStats as aX, getJsStats as aY, getMethodColor as aZ, isValidTag as a_, type PlaceholderStyle as aa, type RedosFinding as ab, type RedosResult as ac, type RedosSeverity as ad, type RegexBackreferenceInfo as ae, type RegexError as af, type RegexFlag as ag, type RegexGroupAnalysis as ah, type RegexGroupInfo as ai, type RegexGroupIssue as aj, type RegexMatch as ak, type RegexResult as al, type RegexSuccess as am, type ResolvedLinkReference as an, SQL_DEFAULT_OPTIONS as ao, type Segment as ap, type SpecVersion as aq, type SqlDialect as ar, type SqlFormatOptions as as, type SqlPlaceholder as at, type SqlPlaceholderResult as au, type SvgSpriteResult as av, type SvgSpriteSymbol as aw, type TestPatternResult as ax, type TsconfigIssue as ay, type TsconfigValidationResult as az, type ApiInfo as b, lookupMime as b0, minifyCss as b1, minifyGql as b2, minifyHtml as b3, minifyJs as b4, minifySql as b5, normalizeRef as b6, parseCommitTrailers as b7, parseConnectionString as b8, parseDockerImage as b9, parseEnv as ba, parseGitCommand as bb, parseGithubUrl as bc, parseSpec as bd, removeConsoleCalls as be, removeEmptyAttributes as bf, removeHtmlComments as bg, removeJsComments as bh, removeRedundantAttributes as bi, searchCheatsheet as bj, searchEndpoints as bk, splitStatements as bl, testGitignorePatterns as bm, testPattern as bn, testRegex as bo, validateAria as bp, validateEditorConfig as bq, validateEnvKey as br, validateFenceLanguageTags as bs, validatePackageExports as bt, validateTsconfig as bu, code as c, type AriaIssue as d, type AriaValidationResult as e, type CheatsheetEntry as f, type CommitTrailer as g, type CommitTrailerResult as h, type ConnectionStringHost as i, type ConnectionStringResult as j, type ConventionalCommitFinding as k, type ConventionalCommitFooter as l, type ConventionalCommitOptions as m, type ConventionalCommitParsed as n, type ConventionalCommitResult as o, type ConventionalCommitSeverity as p, type CssResult as q, type DependencyAuditDuplicate as r, type DependencyAuditEntry as s, type DependencyAuditIssue as t, type DependencyAuditResult as u, type DependencyRangeType as v, type DependencySection as w, type DockerImageRef as x, type EditorConfigProperty as y, type EditorConfigSection as z };
package/dist/index.cjs CHANGED
@@ -16791,6 +16791,7 @@ __export(code_exports, {
16791
16791
  envToExport: () => envToExport2,
16792
16792
  envToJson: () => envToJson2,
16793
16793
  extractMarkdownFootnotes: () => extractMarkdownFootnotes,
16794
+ extractMarkdownLinkReferences: () => extractMarkdownLinkReferences,
16794
16795
  extractSvgSpriteSymbols: () => extractSvgSpriteSymbols,
16795
16796
  formatCss: () => formatCss,
16796
16797
  formatGql: () => formatGql,
@@ -21032,6 +21033,64 @@ function countSqlPlaceholders(sql) {
21032
21033
  numberedDuplicates
21033
21034
  };
21034
21035
  }
21036
+ var LINK_REF_DEFINITION_REGEX = /^ {0,3}\[([^\]]+)\]:\s*(\S+)(?:\s+(?:"([^"]*)"|'([^']*)'|\(([^)]*)\)))?\s*$/;
21037
+ var LINK_REF_USAGE_REGEX = /(!?)\[([^[\]\n]*)\]\[([^[\]\n]*)\]/g;
21038
+ function normalizeLinkLabel(label) {
21039
+ return label.trim().replace(/\s+/g, " ").toLowerCase();
21040
+ }
21041
+ function extractMarkdownLinkReferences(markdown) {
21042
+ const trimmed = markdown.trim();
21043
+ if (!trimmed) return { error: "Empty input" };
21044
+ const lines = markdown.replace(/\r\n/g, "\n").split("\n");
21045
+ const definitions = [];
21046
+ const definitionsByLabel = /* @__PURE__ */ new Map();
21047
+ for (const line of lines) {
21048
+ const match = line.match(LINK_REF_DEFINITION_REGEX);
21049
+ if (!match) continue;
21050
+ const label = match[1];
21051
+ const normalized = normalizeLinkLabel(label);
21052
+ if (definitionsByLabel.has(normalized)) continue;
21053
+ const def = {
21054
+ label,
21055
+ url: match[2],
21056
+ title: match[3] ?? match[4] ?? match[5] ?? void 0
21057
+ };
21058
+ definitionsByLabel.set(normalized, def);
21059
+ definitions.push(def);
21060
+ }
21061
+ const usages = [];
21062
+ for (const m of markdown.matchAll(LINK_REF_USAGE_REGEX)) {
21063
+ const image = m[1] === "!";
21064
+ const text = m[2];
21065
+ const rawRef = m[3];
21066
+ const label = rawRef.trim() === "" ? text : rawRef;
21067
+ usages.push({ text, label, image });
21068
+ }
21069
+ if (definitions.length === 0 && usages.length === 0) {
21070
+ return { error: "No reference-style links or definitions found" };
21071
+ }
21072
+ const usedLabels = /* @__PURE__ */ new Set();
21073
+ const resolved = [];
21074
+ const unresolvedReferences = [];
21075
+ for (const usage of usages) {
21076
+ const normalized = normalizeLinkLabel(usage.label);
21077
+ const def = definitionsByLabel.get(normalized);
21078
+ if (def) {
21079
+ usedLabels.add(normalized);
21080
+ resolved.push({ ...usage, url: def.url, title: def.title });
21081
+ } else {
21082
+ unresolvedReferences.push(usage);
21083
+ }
21084
+ }
21085
+ const unusedDefinitions = definitions.filter((d) => !usedLabels.has(normalizeLinkLabel(d.label)));
21086
+ return {
21087
+ referenceCount: usages.length,
21088
+ definitionCount: definitions.length,
21089
+ resolved,
21090
+ unresolvedReferences,
21091
+ unusedDefinitions
21092
+ };
21093
+ }
21035
21094
 
21036
21095
  // src/tools/color.ts
21037
21096
  var color_exports = {};
@@ -24632,6 +24691,7 @@ __export(ai_agent_exports, {
24632
24691
  extractEntities: () => extractEntities,
24633
24692
  extractJson: () => extractJson,
24634
24693
  extractKeywords: () => extractKeywords,
24694
+ extractPromptTemplateVariables: () => extractPromptTemplateVariables,
24635
24695
  extractTables: () => extractTables,
24636
24696
  extractUrls: () => extractUrls,
24637
24697
  flattenJson: () => flattenJson,
@@ -25785,6 +25845,45 @@ function calculateRetryBackoffSchedule(input) {
25785
25845
  totalWorstCaseMs: round0(totalWorstCaseMs)
25786
25846
  };
25787
25847
  }
25848
+ var PROMPT_TEMPLATE_VARIABLE_REGEX = /\{\{\s*([a-zA-Z0-9_.-]+)\s*\}\}/g;
25849
+ function extractPromptTemplateVariables(template, providedVars) {
25850
+ const trimmed = template.trim();
25851
+ if (!trimmed) return { error: "Empty input" };
25852
+ const order = [];
25853
+ const counts = /* @__PURE__ */ new Map();
25854
+ for (const m of template.matchAll(PROMPT_TEMPLATE_VARIABLE_REGEX)) {
25855
+ const name = m[1];
25856
+ if (!counts.has(name)) {
25857
+ counts.set(name, 0);
25858
+ order.push(name);
25859
+ }
25860
+ counts.set(name, (counts.get(name) ?? 0) + 1);
25861
+ }
25862
+ if (order.length === 0) return { error: "No {{variable}} placeholders found" };
25863
+ const variables = order.map((name) => ({ name, count: counts.get(name) ?? 0 }));
25864
+ const duplicates = order.filter((name) => (counts.get(name) ?? 0) > 1);
25865
+ let missing = [];
25866
+ const unused = [];
25867
+ if (providedVars !== void 0) {
25868
+ const providedSet = new Set(providedVars.map((v) => v.trim()).filter(Boolean));
25869
+ const usedSet = new Set(order);
25870
+ missing = order.filter((name) => !providedSet.has(name));
25871
+ const seenProvided = /* @__PURE__ */ new Set();
25872
+ for (const raw of providedVars) {
25873
+ const v = raw.trim();
25874
+ if (!v || usedSet.has(v) || seenProvided.has(v)) continue;
25875
+ seenProvided.add(v);
25876
+ unused.push(v);
25877
+ }
25878
+ }
25879
+ return {
25880
+ variableCount: order.length,
25881
+ variables,
25882
+ duplicates,
25883
+ missing,
25884
+ unused
25885
+ };
25886
+ }
25788
25887
 
25789
25888
  // src/tools/media.ts
25790
25889
  var media_exports = {};
package/dist/index.d.cts CHANGED
@@ -8,11 +8,11 @@ export { t as time } from './time-KqJjdqII.cjs';
8
8
  export { u as units } from './units-D7YRRwei.cjs';
9
9
  export { n as network } from './network-ylRtLPEs.cjs';
10
10
  export { a as api } from './api-CQnIUrVB.cjs';
11
- export { c as code } from './code-B8yHwP3m.cjs';
11
+ export { c as code } from './code-COUhffgE.cjs';
12
12
  export { c as color } from './color-tPwZCr9H.cjs';
13
13
  export { c as css } from './css-Cf7AMGM-.cjs';
14
14
  export { m as misc } from './misc-CA3N198T.cjs';
15
- export { a as ai_agent } from './ai_agent-DeCy0oZK.cjs';
15
+ export { a as ai_agent } from './ai_agent-B9wWLBDf.cjs';
16
16
  export { m as media } from './media-DF8BS-iA.cjs';
17
17
 
18
18
  declare const version = "0.1.0";
package/dist/index.d.ts CHANGED
@@ -8,11 +8,11 @@ export { t as time } from './time-KqJjdqII.js';
8
8
  export { u as units } from './units-D7YRRwei.js';
9
9
  export { n as network } from './network-ylRtLPEs.js';
10
10
  export { a as api } from './api-CQnIUrVB.js';
11
- export { c as code } from './code-B8yHwP3m.js';
11
+ export { c as code } from './code-COUhffgE.js';
12
12
  export { c as color } from './color-tPwZCr9H.js';
13
13
  export { c as css } from './css-Cf7AMGM-.js';
14
14
  export { m as misc } from './misc-CA3N198T.js';
15
- export { a as ai_agent } from './ai_agent-DeCy0oZK.js';
15
+ export { a as ai_agent } from './ai_agent-B9wWLBDf.js';
16
16
  export { m as media } from './media-DF8BS-iA.js';
17
17
 
18
18
  declare const version = "0.1.0";
package/dist/index.js CHANGED
@@ -2,11 +2,11 @@ export { media_exports as media } from './chunk-ZWFZRDQ4.js';
2
2
  export { units_exports as units } from './chunk-OFLNVDNX.js';
3
3
  export { network_exports as network } from './chunk-SW3J5CAI.js';
4
4
  export { api_exports as api } from './chunk-U2HREMZU.js';
5
- export { code_exports as code } from './chunk-FPFA4ZHC.js';
5
+ export { code_exports as code } from './chunk-KXUHXQFO.js';
6
6
  export { color_exports as color } from './chunk-BPVAB4P2.js';
7
7
  export { css_exports as css } from './chunk-6YPV2AB5.js';
8
8
  export { misc_exports as misc } from './chunk-GX7H6TAX.js';
9
- export { ai_agent_exports as ai_agent } from './chunk-HJLGUNSO.js';
9
+ export { ai_agent_exports as ai_agent } from './chunk-5VVC7BHS.js';
10
10
  export { json_exports as json } from './chunk-WUOZHCIC.js';
11
11
  export { encoding_exports as encoding } from './chunk-DOWQZUTP.js';
12
12
  export { hashing_exports as hashing } from './chunk-PET2CGTH.js';
@@ -1137,6 +1137,45 @@ function calculateRetryBackoffSchedule(input) {
1137
1137
  totalWorstCaseMs: round0(totalWorstCaseMs)
1138
1138
  };
1139
1139
  }
1140
+ var PROMPT_TEMPLATE_VARIABLE_REGEX = /\{\{\s*([a-zA-Z0-9_.-]+)\s*\}\}/g;
1141
+ function extractPromptTemplateVariables(template, providedVars) {
1142
+ const trimmed = template.trim();
1143
+ if (!trimmed) return { error: "Empty input" };
1144
+ const order = [];
1145
+ const counts = /* @__PURE__ */ new Map();
1146
+ for (const m of template.matchAll(PROMPT_TEMPLATE_VARIABLE_REGEX)) {
1147
+ const name = m[1];
1148
+ if (!counts.has(name)) {
1149
+ counts.set(name, 0);
1150
+ order.push(name);
1151
+ }
1152
+ counts.set(name, (counts.get(name) ?? 0) + 1);
1153
+ }
1154
+ if (order.length === 0) return { error: "No {{variable}} placeholders found" };
1155
+ const variables = order.map((name) => ({ name, count: counts.get(name) ?? 0 }));
1156
+ const duplicates = order.filter((name) => (counts.get(name) ?? 0) > 1);
1157
+ let missing = [];
1158
+ const unused = [];
1159
+ if (providedVars !== void 0) {
1160
+ const providedSet = new Set(providedVars.map((v) => v.trim()).filter(Boolean));
1161
+ const usedSet = new Set(order);
1162
+ missing = order.filter((name) => !providedSet.has(name));
1163
+ const seenProvided = /* @__PURE__ */ new Set();
1164
+ for (const raw of providedVars) {
1165
+ const v = raw.trim();
1166
+ if (!v || usedSet.has(v) || seenProvided.has(v)) continue;
1167
+ seenProvided.add(v);
1168
+ unused.push(v);
1169
+ }
1170
+ }
1171
+ return {
1172
+ variableCount: order.length,
1173
+ variables,
1174
+ duplicates,
1175
+ missing,
1176
+ unused
1177
+ };
1178
+ }
1140
1179
 
1141
1180
  exports.MODEL_PRICING = MODEL_PRICING;
1142
1181
  exports.calculateRetryBackoffSchedule = calculateRetryBackoffSchedule;
@@ -1155,6 +1194,7 @@ exports.expandQuery = expandQuery;
1155
1194
  exports.extractEntities = extractEntities;
1156
1195
  exports.extractJson = extractJson;
1157
1196
  exports.extractKeywords = extractKeywords;
1197
+ exports.extractPromptTemplateVariables = extractPromptTemplateVariables;
1158
1198
  exports.extractTables = extractTables;
1159
1199
  exports.extractUrls = extractUrls;
1160
1200
  exports.flattenJson = flattenJson;
@@ -1 +1 @@
1
- export { C as ChunkStrategy, b as CompressHtmlResult, c as CompressJsonResult, d as CompressMarkdownResult, e as CostEstimate, D as DedupeResult, f as DedupeStrategy, g as DiffEntry2, h as DiffOp2, i as DiffResult2, E as Entity2, j as EntityType2, k as ExtractJsonResult, l as ExtractKeywordsResult, m as ExtractUrlsResult, F as FewShotExample, n as FewShotFormat, o as FewShotFormatResult, I as InjectionDetectResult, p as InjectionFinding, J as JsonBlock, q as JsonRepairResult, K as Keyword, M as MODEL_PRICING, r as MergeResult, s as MergeStrategy, t as ModelPricing, P as PiiDetectResult, u as PiiFinding, v as PiiType, R as RankedChunk, w as RelevanceResult, x as RetryBackoffAttempt, y as RetryBackoffInput, z as RetryBackoffResult, A as RetryJitterMode, S as SanitizeResult, B as SecretDetectResult, G as SecretFinding, H as SecretType, L as SummaryResult, T as TableResult2, N as TextChunk, O as TokenEstimate, Q as TokenEstimateResult, U as ToolSchemaIssue, V as ToolSchemaLintResult, W as TrimResult, X as TrimStrategy, Y as UrlMatch, Z as ValidationError, _ as ValidationResult, $ as VectorSimilarityResult, a0 as calculateRetryBackoffSchedule, a1 as chunkText, a2 as compressHtml, a3 as compressJson, a4 as compressMarkdown, a5 as deduplicateLines, a6 as detectPii, a7 as detectPromptInjection, a8 as detectSecrets, a9 as diffJson, aa as estimateCost, ab as estimateTokens, ac as expandQuery, ad as extractEntities, ae as extractJson, af as extractKeywords, ag as extractTables, ah as extractUrls, ai as flattenJson, aj as formatFewShotExamples, ak as lintToolSchema, al as mergeJson, am as redactPii, an as repairJson, ao as rerankChunks, ap as sanitizeHtml, aq as scoreRelevance, ar as summarizeForLlm, as as trimToTokens, at as unflattenJson, au as validateJsonSchema, av as vectorSimilarity } from '../ai_agent-DeCy0oZK.cjs';
1
+ export { C as ChunkStrategy, b as CompressHtmlResult, c as CompressJsonResult, d as CompressMarkdownResult, e as CostEstimate, D as DedupeResult, f as DedupeStrategy, g as DiffEntry2, h as DiffOp2, i as DiffResult2, E as Entity2, j as EntityType2, k as ExtractJsonResult, l as ExtractKeywordsResult, m as ExtractUrlsResult, F as FewShotExample, n as FewShotFormat, o as FewShotFormatResult, I as InjectionDetectResult, p as InjectionFinding, J as JsonBlock, q as JsonRepairResult, K as Keyword, M as MODEL_PRICING, r as MergeResult, s as MergeStrategy, t as ModelPricing, P as PiiDetectResult, u as PiiFinding, v as PiiType, w as PromptTemplateVariable, x as PromptTemplateVariableResult, R as RankedChunk, y as RelevanceResult, z as RetryBackoffAttempt, A as RetryBackoffInput, B as RetryBackoffResult, G as RetryJitterMode, S as SanitizeResult, H as SecretDetectResult, L as SecretFinding, N as SecretType, O as SummaryResult, T as TableResult2, Q as TextChunk, U as TokenEstimate, V as TokenEstimateResult, W as ToolSchemaIssue, X as ToolSchemaLintResult, Y as TrimResult, Z as TrimStrategy, _ as UrlMatch, $ as ValidationError, a0 as ValidationResult, a1 as VectorSimilarityResult, a2 as calculateRetryBackoffSchedule, a3 as chunkText, a4 as compressHtml, a5 as compressJson, a6 as compressMarkdown, a7 as deduplicateLines, a8 as detectPii, a9 as detectPromptInjection, aa as detectSecrets, ab as diffJson, ac as estimateCost, ad as estimateTokens, ae as expandQuery, af as extractEntities, ag as extractJson, ah as extractKeywords, ai as extractPromptTemplateVariables, aj as extractTables, ak as extractUrls, al as flattenJson, am as formatFewShotExamples, an as lintToolSchema, ao as mergeJson, ap as redactPii, aq as repairJson, ar as rerankChunks, as as sanitizeHtml, at as scoreRelevance, au as summarizeForLlm, av as trimToTokens, aw as unflattenJson, ax as validateJsonSchema, ay as vectorSimilarity } from '../ai_agent-B9wWLBDf.cjs';
@@ -1 +1 @@
1
- export { C as ChunkStrategy, b as CompressHtmlResult, c as CompressJsonResult, d as CompressMarkdownResult, e as CostEstimate, D as DedupeResult, f as DedupeStrategy, g as DiffEntry2, h as DiffOp2, i as DiffResult2, E as Entity2, j as EntityType2, k as ExtractJsonResult, l as ExtractKeywordsResult, m as ExtractUrlsResult, F as FewShotExample, n as FewShotFormat, o as FewShotFormatResult, I as InjectionDetectResult, p as InjectionFinding, J as JsonBlock, q as JsonRepairResult, K as Keyword, M as MODEL_PRICING, r as MergeResult, s as MergeStrategy, t as ModelPricing, P as PiiDetectResult, u as PiiFinding, v as PiiType, R as RankedChunk, w as RelevanceResult, x as RetryBackoffAttempt, y as RetryBackoffInput, z as RetryBackoffResult, A as RetryJitterMode, S as SanitizeResult, B as SecretDetectResult, G as SecretFinding, H as SecretType, L as SummaryResult, T as TableResult2, N as TextChunk, O as TokenEstimate, Q as TokenEstimateResult, U as ToolSchemaIssue, V as ToolSchemaLintResult, W as TrimResult, X as TrimStrategy, Y as UrlMatch, Z as ValidationError, _ as ValidationResult, $ as VectorSimilarityResult, a0 as calculateRetryBackoffSchedule, a1 as chunkText, a2 as compressHtml, a3 as compressJson, a4 as compressMarkdown, a5 as deduplicateLines, a6 as detectPii, a7 as detectPromptInjection, a8 as detectSecrets, a9 as diffJson, aa as estimateCost, ab as estimateTokens, ac as expandQuery, ad as extractEntities, ae as extractJson, af as extractKeywords, ag as extractTables, ah as extractUrls, ai as flattenJson, aj as formatFewShotExamples, ak as lintToolSchema, al as mergeJson, am as redactPii, an as repairJson, ao as rerankChunks, ap as sanitizeHtml, aq as scoreRelevance, ar as summarizeForLlm, as as trimToTokens, at as unflattenJson, au as validateJsonSchema, av as vectorSimilarity } from '../ai_agent-DeCy0oZK.js';
1
+ export { C as ChunkStrategy, b as CompressHtmlResult, c as CompressJsonResult, d as CompressMarkdownResult, e as CostEstimate, D as DedupeResult, f as DedupeStrategy, g as DiffEntry2, h as DiffOp2, i as DiffResult2, E as Entity2, j as EntityType2, k as ExtractJsonResult, l as ExtractKeywordsResult, m as ExtractUrlsResult, F as FewShotExample, n as FewShotFormat, o as FewShotFormatResult, I as InjectionDetectResult, p as InjectionFinding, J as JsonBlock, q as JsonRepairResult, K as Keyword, M as MODEL_PRICING, r as MergeResult, s as MergeStrategy, t as ModelPricing, P as PiiDetectResult, u as PiiFinding, v as PiiType, w as PromptTemplateVariable, x as PromptTemplateVariableResult, R as RankedChunk, y as RelevanceResult, z as RetryBackoffAttempt, A as RetryBackoffInput, B as RetryBackoffResult, G as RetryJitterMode, S as SanitizeResult, H as SecretDetectResult, L as SecretFinding, N as SecretType, O as SummaryResult, T as TableResult2, Q as TextChunk, U as TokenEstimate, V as TokenEstimateResult, W as ToolSchemaIssue, X as ToolSchemaLintResult, Y as TrimResult, Z as TrimStrategy, _ as UrlMatch, $ as ValidationError, a0 as ValidationResult, a1 as VectorSimilarityResult, a2 as calculateRetryBackoffSchedule, a3 as chunkText, a4 as compressHtml, a5 as compressJson, a6 as compressMarkdown, a7 as deduplicateLines, a8 as detectPii, a9 as detectPromptInjection, aa as detectSecrets, ab as diffJson, ac as estimateCost, ad as estimateTokens, ae as expandQuery, af as extractEntities, ag as extractJson, ah as extractKeywords, ai as extractPromptTemplateVariables, aj as extractTables, ak as extractUrls, al as flattenJson, am as formatFewShotExamples, an as lintToolSchema, ao as mergeJson, ap as redactPii, aq as repairJson, ar as rerankChunks, as as sanitizeHtml, at as scoreRelevance, au as summarizeForLlm, av as trimToTokens, aw as unflattenJson, ax as validateJsonSchema, ay as vectorSimilarity } from '../ai_agent-B9wWLBDf.js';
@@ -1,2 +1,2 @@
1
- export { MODEL_PRICING, calculateRetryBackoffSchedule, chunkText, compressHtml, compressJson, compressMarkdown, deduplicateLines, detectPii, detectPromptInjection, detectSecrets, diffJson, estimateCost, estimateTokens, expandQuery, extractEntities, extractJson, extractKeywords, extractTables, extractUrls, flattenJson, formatFewShotExamples, lintToolSchema, mergeJson, redactPii, repairJson, rerankChunks, sanitizeHtml, scoreRelevance, summarizeForLlm, trimToTokens, unflattenJson, validateJsonSchema, vectorSimilarity } from '../chunk-HJLGUNSO.js';
1
+ export { MODEL_PRICING, calculateRetryBackoffSchedule, chunkText, compressHtml, compressJson, compressMarkdown, deduplicateLines, detectPii, detectPromptInjection, detectSecrets, diffJson, estimateCost, estimateTokens, expandQuery, extractEntities, extractJson, extractKeywords, extractPromptTemplateVariables, extractTables, extractUrls, flattenJson, formatFewShotExamples, lintToolSchema, mergeJson, redactPii, repairJson, rerankChunks, sanitizeHtml, scoreRelevance, summarizeForLlm, trimToTokens, unflattenJson, validateJsonSchema, vectorSimilarity } from '../chunk-5VVC7BHS.js';
2
2
  import '../chunk-MLKGABMK.js';
@@ -4201,6 +4201,64 @@ function countSqlPlaceholders(sql) {
4201
4201
  numberedDuplicates
4202
4202
  };
4203
4203
  }
4204
+ var LINK_REF_DEFINITION_REGEX = /^ {0,3}\[([^\]]+)\]:\s*(\S+)(?:\s+(?:"([^"]*)"|'([^']*)'|\(([^)]*)\)))?\s*$/;
4205
+ var LINK_REF_USAGE_REGEX = /(!?)\[([^[\]\n]*)\]\[([^[\]\n]*)\]/g;
4206
+ function normalizeLinkLabel(label) {
4207
+ return label.trim().replace(/\s+/g, " ").toLowerCase();
4208
+ }
4209
+ function extractMarkdownLinkReferences(markdown) {
4210
+ const trimmed = markdown.trim();
4211
+ if (!trimmed) return { error: "Empty input" };
4212
+ const lines = markdown.replace(/\r\n/g, "\n").split("\n");
4213
+ const definitions = [];
4214
+ const definitionsByLabel = /* @__PURE__ */ new Map();
4215
+ for (const line of lines) {
4216
+ const match = line.match(LINK_REF_DEFINITION_REGEX);
4217
+ if (!match) continue;
4218
+ const label = match[1];
4219
+ const normalized = normalizeLinkLabel(label);
4220
+ if (definitionsByLabel.has(normalized)) continue;
4221
+ const def = {
4222
+ label,
4223
+ url: match[2],
4224
+ title: match[3] ?? match[4] ?? match[5] ?? void 0
4225
+ };
4226
+ definitionsByLabel.set(normalized, def);
4227
+ definitions.push(def);
4228
+ }
4229
+ const usages = [];
4230
+ for (const m of markdown.matchAll(LINK_REF_USAGE_REGEX)) {
4231
+ const image = m[1] === "!";
4232
+ const text = m[2];
4233
+ const rawRef = m[3];
4234
+ const label = rawRef.trim() === "" ? text : rawRef;
4235
+ usages.push({ text, label, image });
4236
+ }
4237
+ if (definitions.length === 0 && usages.length === 0) {
4238
+ return { error: "No reference-style links or definitions found" };
4239
+ }
4240
+ const usedLabels = /* @__PURE__ */ new Set();
4241
+ const resolved = [];
4242
+ const unresolvedReferences = [];
4243
+ for (const usage of usages) {
4244
+ const normalized = normalizeLinkLabel(usage.label);
4245
+ const def = definitionsByLabel.get(normalized);
4246
+ if (def) {
4247
+ usedLabels.add(normalized);
4248
+ resolved.push({ ...usage, url: def.url, title: def.title });
4249
+ } else {
4250
+ unresolvedReferences.push(usage);
4251
+ }
4252
+ }
4253
+ const unusedDefinitions = definitions.filter((d) => !usedLabels.has(normalizeLinkLabel(d.label)));
4254
+ return {
4255
+ referenceCount: usages.length,
4256
+ definitionCount: definitions.length,
4257
+ resolved,
4258
+ unresolvedReferences,
4259
+ unusedDefinitions
4260
+ };
4261
+ }
4204
4262
 
4205
4263
  exports.ALL_FLAGS = ALL_FLAGS;
4206
4264
  exports.CHEATSHEET = CHEATSHEET;
@@ -4225,6 +4283,7 @@ exports.detectRedos = detectRedos;
4225
4283
  exports.envToExport = envToExport;
4226
4284
  exports.envToJson = envToJson;
4227
4285
  exports.extractMarkdownFootnotes = extractMarkdownFootnotes;
4286
+ exports.extractMarkdownLinkReferences = extractMarkdownLinkReferences;
4228
4287
  exports.extractSvgSpriteSymbols = extractSvgSpriteSymbols;
4229
4288
  exports.formatCss = formatCss;
4230
4289
  exports.formatGql = formatGql;
@@ -1 +1 @@
1
- export { A as ALL_FLAGS, a as ApiEndpoint, b as ApiInfo, d as AriaIssue, e as AriaValidationResult, C as CHEATSHEET, f as CheatsheetEntry, g as CommitTrailer, h as CommitTrailerResult, i as ConnectionStringHost, j as ConnectionStringResult, k as ConventionalCommitFinding, l as ConventionalCommitFooter, m as ConventionalCommitOptions, n as ConventionalCommitParsed, o as ConventionalCommitResult, p as ConventionalCommitSeverity, q as CssResult, D as DEFAULT_COMMIT_TYPES, r as DependencyAuditDuplicate, s as DependencyAuditEntry, t as DependencyAuditIssue, u as DependencyAuditResult, v as DependencyRangeType, w as DependencySection, x as DockerImageRef, E as EditorConfigIssue, y as EditorConfigProperty, z as EditorConfigSection, B as EditorConfigValidationResult, F as EnvEntry, G as EnvParseResult, H as ExportsIssue, I as ExportsShape, J as ExportsValidationResult, K as FenceTagIssue, L as FenceTagIssueType, M as FenceValidationResult, N as GitCommandConfig, O as GitCommandResult, P as GitOperation, Q as GithubUrlInfo, R as GithubUrlType, S as GitignoreTestResult, T as GqlFormatResult, U as HtmlFormatResult, V as HtmlMinifyOptions, W as HtmlMinifyResult, X as JsMinifyOptions, Y as JsMinifyResult, Z as KNOWN_LANGUAGE_TAGS, _ as MIME_TABLE, $ as MarkdownFootnoteDefinition, a0 as MarkdownFootnoteReference, a1 as MarkdownFootnoteResult, a2 as MatchResult, a3 as MimeEntry, a4 as MimeLookupResult, a5 as OPERATIONS, a6 as ParsedSpec, a7 as PlaceholderStyle, a8 as RedosFinding, a9 as RedosResult, aa as RedosSeverity, ab as RegexBackreferenceInfo, ac as RegexError, ad as RegexFlag, ae as RegexGroupAnalysis, af as RegexGroupInfo, ag as RegexGroupIssue, ah as RegexMatch, ai as RegexResult, aj as RegexSuccess, ak as SQL_DEFAULT_OPTIONS, al as Segment, am as SpecVersion, an as SqlDialect, ao as SqlFormatOptions, ap as SqlPlaceholder, aq as SqlPlaceholderResult, ar as SvgSpriteResult, as as SvgSpriteSymbol, at as TestPatternResult, au as TsconfigIssue, av as TsconfigValidationResult, aw as analyzeRegexGroups, ax as auditDependencyRanges, ay as buildDockerPull, az as buildDockerRun, aA as buildGitCommand, aB as collapseHtmlWhitespace, aC as collapseJsWhitespace, aD as countProperties, aE as countRules, aF as countSqlPlaceholders, aG as detectDialect, aH as detectOperationType, aI as detectRedos, aJ as envToExport, aK as envToJson, aL as extractMarkdownFootnotes, aM as extractSvgSpriteSymbols, aN as formatCss, aO as formatGql, aP as formatHtml, aQ as formatSql, aR as getEndpointsByTag, aS as getHtmlStats, aT as getJsStats, aU as getMethodColor, aV as isValidTag, aW as lintConventionalCommit, aX as lookupMime, aY as minifyCss, aZ as minifyGql, a_ as minifyHtml, a$ as minifyJs, b0 as minifySql, b1 as normalizeRef, b2 as parseCommitTrailers, b3 as parseConnectionString, b4 as parseDockerImage, b5 as parseEnv, b6 as parseGitCommand, b7 as parseGithubUrl, b8 as parseSpec, b9 as removeConsoleCalls, ba as removeEmptyAttributes, bb as removeHtmlComments, bc as removeJsComments, bd as removeRedundantAttributes, be as searchCheatsheet, bf as searchEndpoints, bg as splitStatements, bh as testGitignorePatterns, bi as testPattern, bj as testRegex, bk as validateAria, bl as validateEditorConfig, bm as validateEnvKey, bn as validateFenceLanguageTags, bo as validatePackageExports, bp as validateTsconfig } from '../code-B8yHwP3m.cjs';
1
+ export { A as ALL_FLAGS, a as ApiEndpoint, b as ApiInfo, d as AriaIssue, e as AriaValidationResult, C as CHEATSHEET, f as CheatsheetEntry, g as CommitTrailer, h as CommitTrailerResult, i as ConnectionStringHost, j as ConnectionStringResult, k as ConventionalCommitFinding, l as ConventionalCommitFooter, m as ConventionalCommitOptions, n as ConventionalCommitParsed, o as ConventionalCommitResult, p as ConventionalCommitSeverity, q as CssResult, D as DEFAULT_COMMIT_TYPES, r as DependencyAuditDuplicate, s as DependencyAuditEntry, t as DependencyAuditIssue, u as DependencyAuditResult, v as DependencyRangeType, w as DependencySection, x as DockerImageRef, E as EditorConfigIssue, y as EditorConfigProperty, z as EditorConfigSection, B as EditorConfigValidationResult, F as EnvEntry, G as EnvParseResult, H as ExportsIssue, I as ExportsShape, J as ExportsValidationResult, K as FenceTagIssue, L as FenceTagIssueType, M as FenceValidationResult, N as GitCommandConfig, O as GitCommandResult, P as GitOperation, Q as GithubUrlInfo, R as GithubUrlType, S as GitignoreTestResult, T as GqlFormatResult, U as HtmlFormatResult, V as HtmlMinifyOptions, W as HtmlMinifyResult, X as JsMinifyOptions, Y as JsMinifyResult, Z as KNOWN_LANGUAGE_TAGS, _ as LinkReferenceDefinition, $ as LinkReferenceUsage, a0 as MIME_TABLE, a1 as MarkdownFootnoteDefinition, a2 as MarkdownFootnoteReference, a3 as MarkdownFootnoteResult, a4 as MarkdownLinkReferenceResult, a5 as MatchResult, a6 as MimeEntry, a7 as MimeLookupResult, a8 as OPERATIONS, a9 as ParsedSpec, aa as PlaceholderStyle, ab as RedosFinding, ac as RedosResult, ad as RedosSeverity, ae as RegexBackreferenceInfo, af as RegexError, ag as RegexFlag, ah as RegexGroupAnalysis, ai as RegexGroupInfo, aj as RegexGroupIssue, ak as RegexMatch, al as RegexResult, am as RegexSuccess, an as ResolvedLinkReference, ao as SQL_DEFAULT_OPTIONS, ap as Segment, aq as SpecVersion, ar as SqlDialect, as as SqlFormatOptions, at as SqlPlaceholder, au as SqlPlaceholderResult, av as SvgSpriteResult, aw as SvgSpriteSymbol, ax as TestPatternResult, ay as TsconfigIssue, az as TsconfigValidationResult, aA as analyzeRegexGroups, aB as auditDependencyRanges, aC as buildDockerPull, aD as buildDockerRun, aE as buildGitCommand, aF as collapseHtmlWhitespace, aG as collapseJsWhitespace, aH as countProperties, aI as countRules, aJ as countSqlPlaceholders, aK as detectDialect, aL as detectOperationType, aM as detectRedos, aN as envToExport, aO as envToJson, aP as extractMarkdownFootnotes, aQ as extractMarkdownLinkReferences, aR as extractSvgSpriteSymbols, aS as formatCss, aT as formatGql, aU as formatHtml, aV as formatSql, aW as getEndpointsByTag, aX as getHtmlStats, aY as getJsStats, aZ as getMethodColor, a_ as isValidTag, a$ as lintConventionalCommit, b0 as lookupMime, b1 as minifyCss, b2 as minifyGql, b3 as minifyHtml, b4 as minifyJs, b5 as minifySql, b6 as normalizeRef, b7 as parseCommitTrailers, b8 as parseConnectionString, b9 as parseDockerImage, ba as parseEnv, bb as parseGitCommand, bc as parseGithubUrl, bd as parseSpec, be as removeConsoleCalls, bf as removeEmptyAttributes, bg as removeHtmlComments, bh as removeJsComments, bi as removeRedundantAttributes, bj as searchCheatsheet, bk as searchEndpoints, bl as splitStatements, bm as testGitignorePatterns, bn as testPattern, bo as testRegex, bp as validateAria, bq as validateEditorConfig, br as validateEnvKey, bs as validateFenceLanguageTags, bt as validatePackageExports, bu as validateTsconfig } from '../code-COUhffgE.cjs';
@@ -1 +1 @@
1
- export { A as ALL_FLAGS, a as ApiEndpoint, b as ApiInfo, d as AriaIssue, e as AriaValidationResult, C as CHEATSHEET, f as CheatsheetEntry, g as CommitTrailer, h as CommitTrailerResult, i as ConnectionStringHost, j as ConnectionStringResult, k as ConventionalCommitFinding, l as ConventionalCommitFooter, m as ConventionalCommitOptions, n as ConventionalCommitParsed, o as ConventionalCommitResult, p as ConventionalCommitSeverity, q as CssResult, D as DEFAULT_COMMIT_TYPES, r as DependencyAuditDuplicate, s as DependencyAuditEntry, t as DependencyAuditIssue, u as DependencyAuditResult, v as DependencyRangeType, w as DependencySection, x as DockerImageRef, E as EditorConfigIssue, y as EditorConfigProperty, z as EditorConfigSection, B as EditorConfigValidationResult, F as EnvEntry, G as EnvParseResult, H as ExportsIssue, I as ExportsShape, J as ExportsValidationResult, K as FenceTagIssue, L as FenceTagIssueType, M as FenceValidationResult, N as GitCommandConfig, O as GitCommandResult, P as GitOperation, Q as GithubUrlInfo, R as GithubUrlType, S as GitignoreTestResult, T as GqlFormatResult, U as HtmlFormatResult, V as HtmlMinifyOptions, W as HtmlMinifyResult, X as JsMinifyOptions, Y as JsMinifyResult, Z as KNOWN_LANGUAGE_TAGS, _ as MIME_TABLE, $ as MarkdownFootnoteDefinition, a0 as MarkdownFootnoteReference, a1 as MarkdownFootnoteResult, a2 as MatchResult, a3 as MimeEntry, a4 as MimeLookupResult, a5 as OPERATIONS, a6 as ParsedSpec, a7 as PlaceholderStyle, a8 as RedosFinding, a9 as RedosResult, aa as RedosSeverity, ab as RegexBackreferenceInfo, ac as RegexError, ad as RegexFlag, ae as RegexGroupAnalysis, af as RegexGroupInfo, ag as RegexGroupIssue, ah as RegexMatch, ai as RegexResult, aj as RegexSuccess, ak as SQL_DEFAULT_OPTIONS, al as Segment, am as SpecVersion, an as SqlDialect, ao as SqlFormatOptions, ap as SqlPlaceholder, aq as SqlPlaceholderResult, ar as SvgSpriteResult, as as SvgSpriteSymbol, at as TestPatternResult, au as TsconfigIssue, av as TsconfigValidationResult, aw as analyzeRegexGroups, ax as auditDependencyRanges, ay as buildDockerPull, az as buildDockerRun, aA as buildGitCommand, aB as collapseHtmlWhitespace, aC as collapseJsWhitespace, aD as countProperties, aE as countRules, aF as countSqlPlaceholders, aG as detectDialect, aH as detectOperationType, aI as detectRedos, aJ as envToExport, aK as envToJson, aL as extractMarkdownFootnotes, aM as extractSvgSpriteSymbols, aN as formatCss, aO as formatGql, aP as formatHtml, aQ as formatSql, aR as getEndpointsByTag, aS as getHtmlStats, aT as getJsStats, aU as getMethodColor, aV as isValidTag, aW as lintConventionalCommit, aX as lookupMime, aY as minifyCss, aZ as minifyGql, a_ as minifyHtml, a$ as minifyJs, b0 as minifySql, b1 as normalizeRef, b2 as parseCommitTrailers, b3 as parseConnectionString, b4 as parseDockerImage, b5 as parseEnv, b6 as parseGitCommand, b7 as parseGithubUrl, b8 as parseSpec, b9 as removeConsoleCalls, ba as removeEmptyAttributes, bb as removeHtmlComments, bc as removeJsComments, bd as removeRedundantAttributes, be as searchCheatsheet, bf as searchEndpoints, bg as splitStatements, bh as testGitignorePatterns, bi as testPattern, bj as testRegex, bk as validateAria, bl as validateEditorConfig, bm as validateEnvKey, bn as validateFenceLanguageTags, bo as validatePackageExports, bp as validateTsconfig } from '../code-B8yHwP3m.js';
1
+ export { A as ALL_FLAGS, a as ApiEndpoint, b as ApiInfo, d as AriaIssue, e as AriaValidationResult, C as CHEATSHEET, f as CheatsheetEntry, g as CommitTrailer, h as CommitTrailerResult, i as ConnectionStringHost, j as ConnectionStringResult, k as ConventionalCommitFinding, l as ConventionalCommitFooter, m as ConventionalCommitOptions, n as ConventionalCommitParsed, o as ConventionalCommitResult, p as ConventionalCommitSeverity, q as CssResult, D as DEFAULT_COMMIT_TYPES, r as DependencyAuditDuplicate, s as DependencyAuditEntry, t as DependencyAuditIssue, u as DependencyAuditResult, v as DependencyRangeType, w as DependencySection, x as DockerImageRef, E as EditorConfigIssue, y as EditorConfigProperty, z as EditorConfigSection, B as EditorConfigValidationResult, F as EnvEntry, G as EnvParseResult, H as ExportsIssue, I as ExportsShape, J as ExportsValidationResult, K as FenceTagIssue, L as FenceTagIssueType, M as FenceValidationResult, N as GitCommandConfig, O as GitCommandResult, P as GitOperation, Q as GithubUrlInfo, R as GithubUrlType, S as GitignoreTestResult, T as GqlFormatResult, U as HtmlFormatResult, V as HtmlMinifyOptions, W as HtmlMinifyResult, X as JsMinifyOptions, Y as JsMinifyResult, Z as KNOWN_LANGUAGE_TAGS, _ as LinkReferenceDefinition, $ as LinkReferenceUsage, a0 as MIME_TABLE, a1 as MarkdownFootnoteDefinition, a2 as MarkdownFootnoteReference, a3 as MarkdownFootnoteResult, a4 as MarkdownLinkReferenceResult, a5 as MatchResult, a6 as MimeEntry, a7 as MimeLookupResult, a8 as OPERATIONS, a9 as ParsedSpec, aa as PlaceholderStyle, ab as RedosFinding, ac as RedosResult, ad as RedosSeverity, ae as RegexBackreferenceInfo, af as RegexError, ag as RegexFlag, ah as RegexGroupAnalysis, ai as RegexGroupInfo, aj as RegexGroupIssue, ak as RegexMatch, al as RegexResult, am as RegexSuccess, an as ResolvedLinkReference, ao as SQL_DEFAULT_OPTIONS, ap as Segment, aq as SpecVersion, ar as SqlDialect, as as SqlFormatOptions, at as SqlPlaceholder, au as SqlPlaceholderResult, av as SvgSpriteResult, aw as SvgSpriteSymbol, ax as TestPatternResult, ay as TsconfigIssue, az as TsconfigValidationResult, aA as analyzeRegexGroups, aB as auditDependencyRanges, aC as buildDockerPull, aD as buildDockerRun, aE as buildGitCommand, aF as collapseHtmlWhitespace, aG as collapseJsWhitespace, aH as countProperties, aI as countRules, aJ as countSqlPlaceholders, aK as detectDialect, aL as detectOperationType, aM as detectRedos, aN as envToExport, aO as envToJson, aP as extractMarkdownFootnotes, aQ as extractMarkdownLinkReferences, aR as extractSvgSpriteSymbols, aS as formatCss, aT as formatGql, aU as formatHtml, aV as formatSql, aW as getEndpointsByTag, aX as getHtmlStats, aY as getJsStats, aZ as getMethodColor, a_ as isValidTag, a$ as lintConventionalCommit, b0 as lookupMime, b1 as minifyCss, b2 as minifyGql, b3 as minifyHtml, b4 as minifyJs, b5 as minifySql, b6 as normalizeRef, b7 as parseCommitTrailers, b8 as parseConnectionString, b9 as parseDockerImage, ba as parseEnv, bb as parseGitCommand, bc as parseGithubUrl, bd as parseSpec, be as removeConsoleCalls, bf as removeEmptyAttributes, bg as removeHtmlComments, bh as removeJsComments, bi as removeRedundantAttributes, bj as searchCheatsheet, bk as searchEndpoints, bl as splitStatements, bm as testGitignorePatterns, bn as testPattern, bo as testRegex, bp as validateAria, bq as validateEditorConfig, br as validateEnvKey, bs as validateFenceLanguageTags, bt as validatePackageExports, bu as validateTsconfig } from '../code-COUhffgE.js';
@@ -1,2 +1,2 @@
1
- export { ALL_FLAGS, CHEATSHEET, DEFAULT_COMMIT_TYPES, KNOWN_LANGUAGE_TAGS, MIME_TABLE, OPERATIONS, SQL_DEFAULT_OPTIONS, analyzeRegexGroups, auditDependencyRanges, buildDockerPull, buildDockerRun, buildGitCommand, collapseHtmlWhitespace, collapseJsWhitespace, countProperties, countRules, countSqlPlaceholders, detectDialect, detectOperationType, detectRedos, envToExport, envToJson, extractMarkdownFootnotes, extractSvgSpriteSymbols, formatCss, formatGql, formatHtml, formatSql, getEndpointsByTag, getHtmlStats, getJsStats, getMethodColor, isValidTag, lintConventionalCommit, lookupMime, minifyCss, minifyGql, minifyHtml, minifyJs, minifySql, normalizeRef, parseCommitTrailers, parseConnectionString, parseDockerImage, parseEnv, parseGitCommand, parseGithubUrl, parseSpec, removeConsoleCalls, removeEmptyAttributes, removeHtmlComments, removeJsComments, removeRedundantAttributes, searchCheatsheet, searchEndpoints, splitStatements, testGitignorePatterns, testPattern, testRegex, validateAria, validateEditorConfig, validateEnvKey, validateFenceLanguageTags, validatePackageExports, validateTsconfig } from '../chunk-FPFA4ZHC.js';
1
+ export { ALL_FLAGS, CHEATSHEET, DEFAULT_COMMIT_TYPES, KNOWN_LANGUAGE_TAGS, MIME_TABLE, OPERATIONS, SQL_DEFAULT_OPTIONS, analyzeRegexGroups, auditDependencyRanges, buildDockerPull, buildDockerRun, buildGitCommand, collapseHtmlWhitespace, collapseJsWhitespace, countProperties, countRules, countSqlPlaceholders, detectDialect, detectOperationType, detectRedos, envToExport, envToJson, extractMarkdownFootnotes, extractMarkdownLinkReferences, extractSvgSpriteSymbols, formatCss, formatGql, formatHtml, formatSql, getEndpointsByTag, getHtmlStats, getJsStats, getMethodColor, isValidTag, lintConventionalCommit, lookupMime, minifyCss, minifyGql, minifyHtml, minifyJs, minifySql, normalizeRef, parseCommitTrailers, parseConnectionString, parseDockerImage, parseEnv, parseGitCommand, parseGithubUrl, parseSpec, removeConsoleCalls, removeEmptyAttributes, removeHtmlComments, removeJsComments, removeRedundantAttributes, searchCheatsheet, searchEndpoints, splitStatements, testGitignorePatterns, testPattern, testRegex, validateAria, validateEditorConfig, validateEnvKey, validateFenceLanguageTags, validatePackageExports, validateTsconfig } from '../chunk-KXUHXQFO.js';
2
2
  import '../chunk-MLKGABMK.js';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@utilix-tech/sdk",
3
- "version": "0.82.0",
3
+ "version": "0.83.0",
4
4
  "description": "154+ developer utility tools for Node.js: JSON, encoding, hashing, color, CSS, network and more. Runs locally, no API key required.",
5
5
  "author": "Utilix <hello@utilix.tech>",
6
6
  "license": "MIT",