@actuarial-ts/core 0.5.0 → 0.6.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (120) hide show
  1. package/README.md +65 -226
  2. package/dist/capping.d.ts.map +1 -1
  3. package/dist/capping.js +39 -6
  4. package/dist/capping.js.map +1 -1
  5. package/dist/casualtyDiagnostics.d.ts +19 -49
  6. package/dist/casualtyDiagnostics.d.ts.map +1 -1
  7. package/dist/casualtyDiagnostics.js +84 -116
  8. package/dist/casualtyDiagnostics.js.map +1 -1
  9. package/dist/diagnosticAggregation.d.ts +32 -0
  10. package/dist/diagnosticAggregation.d.ts.map +1 -0
  11. package/dist/diagnosticAggregation.js +73 -0
  12. package/dist/diagnosticAggregation.js.map +1 -0
  13. package/dist/diagnosticDefinitions.d.ts +289 -0
  14. package/dist/diagnosticDefinitions.d.ts.map +1 -0
  15. package/dist/diagnosticDefinitions.js +1688 -0
  16. package/dist/diagnosticDefinitions.js.map +1 -0
  17. package/dist/diagnosticDerivations.d.ts +35 -0
  18. package/dist/diagnosticDerivations.d.ts.map +1 -0
  19. package/dist/diagnosticDerivations.js +224 -0
  20. package/dist/diagnosticDerivations.js.map +1 -0
  21. package/dist/diagnosticExposure.d.ts +51 -0
  22. package/dist/diagnosticExposure.d.ts.map +1 -0
  23. package/dist/diagnosticExposure.js +273 -0
  24. package/dist/diagnosticExposure.js.map +1 -0
  25. package/dist/diagnosticExpressions.d.ts +56 -0
  26. package/dist/diagnosticExpressions.d.ts.map +1 -0
  27. package/dist/diagnosticExpressions.js +124 -0
  28. package/dist/diagnosticExpressions.js.map +1 -0
  29. package/dist/diagnosticFormulas.d.ts +198 -0
  30. package/dist/diagnosticFormulas.d.ts.map +1 -0
  31. package/dist/diagnosticFormulas.js +219 -0
  32. package/dist/diagnosticFormulas.js.map +1 -0
  33. package/dist/diagnosticIdentity.d.ts +251 -0
  34. package/dist/diagnosticIdentity.d.ts.map +1 -0
  35. package/dist/diagnosticIdentity.js +721 -0
  36. package/dist/diagnosticIdentity.js.map +1 -0
  37. package/dist/diagnosticOrdering.d.ts +8 -0
  38. package/dist/diagnosticOrdering.d.ts.map +1 -0
  39. package/dist/diagnosticOrdering.js +73 -0
  40. package/dist/diagnosticOrdering.js.map +1 -0
  41. package/dist/diagnosticPeriodAxis.d.ts +9 -0
  42. package/dist/diagnosticPeriodAxis.d.ts.map +1 -0
  43. package/dist/diagnosticPeriodAxis.js +69 -0
  44. package/dist/diagnosticPeriodAxis.js.map +1 -0
  45. package/dist/diagnosticPeriods.d.ts +15 -0
  46. package/dist/diagnosticPeriods.d.ts.map +1 -0
  47. package/dist/diagnosticPeriods.js +50 -0
  48. package/dist/diagnosticPeriods.js.map +1 -0
  49. package/dist/diagnosticPreparation.d.ts +131 -0
  50. package/dist/diagnosticPreparation.d.ts.map +1 -0
  51. package/dist/diagnosticPreparation.js +1539 -0
  52. package/dist/diagnosticPreparation.js.map +1 -0
  53. package/dist/diagnosticReview.d.ts +66 -0
  54. package/dist/diagnosticReview.d.ts.map +1 -0
  55. package/dist/diagnosticReview.js +490 -0
  56. package/dist/diagnosticReview.js.map +1 -0
  57. package/dist/diagnosticRules.d.ts +32 -0
  58. package/dist/diagnosticRules.d.ts.map +1 -0
  59. package/dist/diagnosticRules.js +32 -0
  60. package/dist/diagnosticRules.js.map +1 -0
  61. package/dist/diagnosticRunner.d.ts +86 -0
  62. package/dist/diagnosticRunner.d.ts.map +1 -0
  63. package/dist/diagnosticRunner.js +703 -0
  64. package/dist/diagnosticRunner.js.map +1 -0
  65. package/dist/diagnosticRuntime.d.ts +26 -0
  66. package/dist/diagnosticRuntime.d.ts.map +1 -0
  67. package/dist/diagnosticRuntime.js +243 -0
  68. package/dist/diagnosticRuntime.js.map +1 -0
  69. package/dist/diagnosticSourceOrdering.d.ts +6 -0
  70. package/dist/diagnosticSourceOrdering.d.ts.map +1 -0
  71. package/dist/diagnosticSourceOrdering.js +38 -0
  72. package/dist/diagnosticSourceOrdering.js.map +1 -0
  73. package/dist/index.d.ts +28 -1
  74. package/dist/index.d.ts.map +1 -1
  75. package/dist/index.js +16 -1
  76. package/dist/index.js.map +1 -1
  77. package/dist/mack.d.ts +4 -0
  78. package/dist/mack.d.ts.map +1 -1
  79. package/dist/mack.js +32 -4
  80. package/dist/mack.js.map +1 -1
  81. package/dist/triangle.d.ts.map +1 -1
  82. package/dist/triangle.js +59 -9
  83. package/dist/triangle.js.map +1 -1
  84. package/dist/types.d.ts +21 -0
  85. package/dist/types.d.ts.map +1 -1
  86. package/dist/types.js +128 -0
  87. package/dist/types.js.map +1 -1
  88. package/dist/version.d.ts +3 -0
  89. package/dist/version.d.ts.map +1 -0
  90. package/dist/version.js +3 -0
  91. package/dist/version.js.map +1 -0
  92. package/package.json +4 -3
  93. package/src/capping.ts +109 -18
  94. package/src/casualtyDiagnostics.ts +79 -189
  95. package/src/diagnosticAggregation.ts +128 -0
  96. package/src/diagnosticDefinitions.ts +3624 -0
  97. package/src/diagnosticDerivations.ts +321 -0
  98. package/src/diagnosticExposure.ts +482 -0
  99. package/src/diagnosticExpressions.ts +255 -0
  100. package/src/diagnosticFormulas.ts +350 -0
  101. package/src/diagnosticIdentity.ts +1267 -0
  102. package/src/diagnosticOrdering.ts +106 -0
  103. package/src/diagnosticPeriodAxis.ts +92 -0
  104. package/src/diagnosticPeriods.ts +102 -0
  105. package/src/diagnosticPreparation.ts +2475 -0
  106. package/src/diagnosticReview.ts +897 -0
  107. package/src/diagnosticRules.ts +69 -0
  108. package/src/diagnosticRunner.ts +1114 -0
  109. package/src/diagnosticRuntime.ts +264 -0
  110. package/src/diagnosticSourceOrdering.ts +50 -0
  111. package/src/index.ts +184 -1
  112. package/src/mack.ts +72 -9
  113. package/src/triangle.ts +103 -13
  114. package/src/types.ts +196 -0
  115. package/src/version.ts +2 -0
  116. package/dist/metricDiagnostics.d.ts +0 -212
  117. package/dist/metricDiagnostics.d.ts.map +0 -1
  118. package/dist/metricDiagnostics.js +0 -627
  119. package/dist/metricDiagnostics.js.map +0 -1
  120. package/src/metricDiagnostics.ts +0 -876
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diagnosticIdentity.js","sourceRoot":"","sources":["../src/diagnosticIdentity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAiCxD,OAAO,EAAE,iCAAiC,EAAE,MAAM,2BAA2B,CAAC;AAC9E,OAAO,EACL,uBAAuB,EACvB,uBAAuB,EACvB,iBAAiB,EACjB,yBAAyB,GAC1B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,yBAAyB,GAE1B,MAAM,YAAY,CAAC;AAgBpB,mFAAmF;AACnF,SAAS,2BAA2B,CAAC,MAAyB;IAC5D,MAAM,MAAM,GAAgC;QAC1C,GAAG,uBAAuB,CAAC,MAAM,EAAE,eAAe,CAAC;KACpD,CAAC;IACF,IAAI,MAAM,CAAC,MAAM;QAAE,MAAM,IAAI,yBAAyB,CAAC,MAAM,CAAC,CAAC;IAC/D,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC;QAClC,MAAM,IAAI,yBAAyB,CAAC;YAClC;gBACE,MAAM,EAAE,eAAe;gBACvB,IAAI,EAAE,cAAc;gBACpB,IAAI,EAAE,GAAG;gBACT,OAAO,EAAE,uCAAuC;aACjD;SACF,CAAC,CAAC;IAEL,MAAM,KAAK,GAAG;QACZ,cAAc,EAAE,cAAc,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa;KACvE,CAAC;IACF,MAAM,MAAM,GAAG;QACb,YAAY,EAAE,eAAe,EAAE,eAAe,EAAE,kBAAkB;KACnE,CAAC;IACF,MAAM,MAAM,GAAG,CAAC,mBAAmB,EAAE,mBAAmB,CAAC,CAAC;IAC1D,MAAM,UAAU,GAAG,CAAC,KAAc,EAAE,IAAY,EAAE,EAAE;QAClD,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC;YAC3B,MAAM,CAAC,IAAI,CAAC;gBACV,MAAM,EAAE,eAAe;gBACvB,IAAI,EAAE,gBAAgB;gBACtB,IAAI;gBACJ,OAAO,EAAE,kDAAkD;aAC5D,CAAC,CAAC;IACP,CAAC,CAAC;IACF,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;QAC7C,MAAM,KAAK,GAAY,MAAM,CAAC,GAAG,CAAC,CAAC;QACnC,MAAM,IAAI,GAAG,4BAA4B,CAAC,IAAI,CAAC,GAAG,CAAC;YACjD,CAAC,CAAC,KAAK,GAAG,EAAE;YACZ,CAAC,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC;QAChC,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACxB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;gBACvB,MAAM,CAAC,IAAI,CAAC;oBACV,MAAM,EAAE,eAAe;oBACvB,IAAI,EAAE,cAAc;oBACpB,IAAI;oBACJ,OAAO,EAAE,kCAAkC;iBAC5C,CAAC,CAAC;;gBAEH,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,IAAI,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC;QAC1E,CAAC;aAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC;YAAE,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;aACpD,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YAC9B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC;gBACxE,MAAM,CAAC,IAAI,CAAC;oBACV,MAAM,EAAE,eAAe;oBACvB,IAAI,EAAE,gBAAgB;oBACtB,IAAI;oBACJ,OAAO,EAAE,0DAA0D;iBACpE,CAAC,CAAC;QACP,CAAC;;YACC,MAAM,CAAC,IAAI,CAAC;gBACV,MAAM,EAAE,eAAe;gBACvB,IAAI,EAAE,aAAa;gBACnB,IAAI;gBACJ,OAAO,EAAE,sBAAsB,GAAG,EAAE;aACrC,CAAC,CAAC;IACP,CAAC;IACD,IACE,OAAO,MAAM,CAAC,iBAAiB,KAAK,QAAQ;QAC5C,OAAO,MAAM,CAAC,iBAAiB,KAAK,QAAQ;QAC5C,MAAM,CAAC,iBAAiB,GAAG,MAAM,CAAC,iBAAiB;QAEnD,MAAM,CAAC,IAAI,CAAC;YACV,MAAM,EAAE,eAAe;YACvB,IAAI,EAAE,uBAAuB;YAC7B,IAAI,EAAE,GAAG;YACT,OAAO,EAAE,yCAAyC;SACnD,CAAC,CAAC;IACL,IAAI,MAAM,CAAC,MAAM;QAAE,MAAM,IAAI,yBAAyB,CAAC,MAAM,CAAC,CAAC;AACjE,CAAC;AAED,iFAAiF;AACjF,MAAM,UAAU,kCAAkC,CAChD,MAAgC;IAEhC,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACjC,2BAA2B,CAAC,MAAM,CAAC,CAAC;IACpC,OAAO,UAAU,CAAC;QAChB,YAAY,EACV,MAAM,CAAC,YAAY,KAAK,SAAS;YAC/B,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,YAAY,CAAC;QACvC,YAAY,EACV,MAAM,CAAC,YAAY,KAAK,SAAS;YAC/B,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,YAAY,CAAC;QACvC,OAAO,EAAE,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC;QAC3E,UAAU,EAAE,MAAM,CAAC,UAAU,IAAI,IAAI;QACrC,aAAa,EAAE,MAAM,CAAC,aAAa,IAAI,IAAI;QAC3C,UAAU,EACR,MAAM,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,UAAU,CAAC;QAC1E,aAAa,EAAE,MAAM,CAAC,aAAa,IAAI,IAAI;QAC3C,gBAAgB,EAAE,MAAM,CAAC,gBAAgB,IAAI,IAAI;QACjD,iBAAiB,EACf,MAAM,CAAC,iBAAiB,KAAK,SAAS;YACpC,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,yBAAyB,CAAC,MAAM,CAAC,iBAAiB,CAAC;QACzD,iBAAiB,EACf,MAAM,CAAC,iBAAiB,KAAK,SAAS;YACpC,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,yBAAyB,CAAC,MAAM,CAAC,iBAAiB,CAAC;QACzD,WAAW,EACT,MAAM,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,WAAW,CAAC;KAC7E,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,yBAAyB,CACvC,KAAQ;IAER,MAAM,MAAM,GAAG,uBAAuB,CAAC,KAAK,EAAE,OAAO,EAAE;QACrD,QAAQ,EAAE,MAAM,CAAC,gBAAgB;KAClC,CAAC,CAAC;IACH,IAAI,MAAM,CAAC,MAAM;QAAE,MAAM,IAAI,yBAAyB,CAAC,MAAM,CAAC,CAAC;IAC/D,MAAM,KAAK,GAAG,CACZ,IAAa,EACb,UAAU,GAAG,KAAK,EAClB,QAAQ,GAAG,KAAK,EAChB,IAAI,GAAG,GAAG,EACD,EAAE;QACX,IAAI,IAAI,KAAK,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;YAC3C,OAAO,OAAO,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACpE,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;YACrB,OAAO,MAAM,CAAC,MAAM,CAClB,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CACxB,KAAK,CAAC,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,IAAI,IAAI,KAAK,GAAG,CAAC,CACxD,CACF,CAAC;QACJ,MAAM,MAAM,GAAG,IAA+B,CAAC;QAC/C,IAAI,UAAU,IAAI,OAAO,MAAM,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;YACxD,MAAM,YAAY,GAAG,EAAE,CAAC;YACxB,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;gBACtC,MAAM,SAAS,GAAG,GAAG,IAAI,IAAI,GAAG,EAAE,CAAC;gBACnC,IACE,CAAC;oBACC,YAAY;oBACZ,YAAY;oBACZ,aAAa;oBACb,WAAW;oBACX,YAAY;iBACb,CAAC,QAAQ,CAAC,GAAG,CAAC;oBAEf,YAAY,CAAC,IAAI,CAAC;wBAChB,MAAM,EAAE,OAAgB;wBACxB,IAAI,EAAE,aAAsB;wBAC5B,IAAI,EAAE,SAAS;wBACf,OAAO,EAAE,+BAA+B,GAAG,EAAE;qBAC9C,CAAC,CAAC;qBACA,IAAI,GAAG,KAAK,WAAW,EAAE,CAAC;oBAC7B,IACE,MAAM,CAAC,GAAG,CAAC,KAAK,IAAI;wBACpB,CAAC,CACC,OAAO,MAAM,CAAC,GAAG,CAAC,KAAK,QAAQ;4BAC/B,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;4BACjC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CACjB;wBAED,YAAY,CAAC,IAAI,CAAC;4BAChB,MAAM,EAAE,OAAgB;4BACxB,IAAI,EAAE,gBAAyB;4BAC/B,IAAI,EAAE,SAAS;4BACf,OAAO,EAAE,uDAAuD;yBACjE,CAAC,CAAC;gBACP,CAAC;qBAAM,IACL,CAAC,CAAC,GAAG,KAAK,YAAY,IAAI,MAAM,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC;oBAC/C,CAAC,iBAAiB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;oBAE/B,YAAY,CAAC,IAAI,CAAC;wBAChB,MAAM,EAAE,OAAgB;wBACxB,IAAI,EAAE,gBAAyB;wBAC/B,IAAI,EAAE,SAAS;wBACf,OAAO,EAAE,iDAAiD;qBAC3D,CAAC,CAAC;YACP,CAAC;YACD,IAAI,YAAY,CAAC,MAAM;gBACrB,MAAM,IAAI,yBAAyB,CAAC,YAAY,CAAC,CAAC;YACpD,OAAO,iCAAiC,CACtC,MAA6C,CAC9C,CAAC;QACJ,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAA4B,CAAC;QAC9D,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;YAC7C,MAAM,MAAM,GACV,QAAQ,IAAI,GAAG,KAAK,iBAAiB,IAAI,GAAG,KAAK,YAAY,CAAC;YAChE,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CACjB,MAAM,CAAC,GAAG,CAAC,EACX,CAAC,MAAM,IAAI,CAAC,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,SAAS,CAAC,EAClD,MAAM,EACN,GAAG,IAAI,IAAI,GAAG,EAAE,CACjB,CAAC;QACJ,CAAC;QACD,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC/B,CAAC,CAAC;IACF,OAAO,KAAK,CAAC,KAAK,CAAoC,CAAC;AACzD,CAAC;AAED,SAAS,gBAAgB,CAAC,IAAY,EAAE,KAAa;IACnD,OAAO,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACpD,CAAC;AAED,SAAS,YAAY,CAAC,MAAyB;IAC7C,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;AACrD,CAAC;AAED,SAAS,YAAY,CACnB,OAA0C;IAE1C,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAsB,CAAC;IACxD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE,CAC/D,gBAAgB,CAAC,IAAI,EAAE,KAAK,CAAC,CAC9B,EAAE,CAAC;QACF,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACtB,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,kBAAkB,CAAI,KAAQ;IACrC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAAE,OAAO,CAAM,CAAC;IACrE,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QACtB,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAM,CAAC;IAC5D,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAChD,OAAO,YAAY,CACjB,MAAM,CAAC,OAAO,CAAC,KAAgC,CAAC,CAAC,GAAG,CAClD,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAU,CAC1D,CACG,CAAC;IACT,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,UAAU,CACjB,KAAQ,EACR,OAAO,IAAI,OAAO,EAAU;IAE5B,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ;QAC7C,OAAO,KAAkC,CAAC;IAC5C,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;QAAE,OAAO,KAAkC,CAAC;IAC/D,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAChB,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,KAAgC,CAAC;QACjE,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAC1B,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,CAA8B,CAAC;AAC3D,CAAC;AAED,SAAS,UAAU,CACjB,KAA6E;IAE7E,OAAO,YAAY,CACjB,MAAM,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAC7B,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAU,CAC1D,CACF,CAAC;AACJ,CAAC;AAyQD,SAAS,mBAAmB,CAC1B,UAA4B;IAE5B,IAAI,UAAU,CAAC,IAAI,KAAK,WAAW;QAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;IAClE,IAAI,UAAU,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAClC,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,CAAC,WAAW,IAAI,IAAI,EAAE,CAAC;IAC1E,CAAC;IACD,OAAO;QACL,IAAI,EAAE,UAAU,CAAC,IAAI;QACrB,UAAU,EAAE,MAAM,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;YAC9C,CAAC,CAAC,CAAC;YACH,CAAC,CAAC,UAAU,CAAC,UAAU;QACzB,KAAK,EACH,UAAU,CAAC,KAAK,KAAK,IAAI,IAAI,MAAM,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YAC1D,CAAC,CAAC,CAAC;YACH,CAAC,CAAC,UAAU,CAAC,KAAK;QACtB,WAAW,EAAE,UAAU,CAAC,WAAW;QACnC,UAAU,EACR,UAAU,CAAC,UAAU,CAAC,IAAI,KAAK,KAAK;YAClC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE;YACjB,CAAC,CAAC;gBACE,IAAI,EAAE,UAAU;gBAChB,KAAK,EAAE,UAAU,CAAC,UAAU,CAAC,KAAK;gBAClC,iBAAiB,EAAE,UAAU,CAAC,UAAU,CAAC,iBAAiB;aAC3D;KACR,CAAC;AACJ,CAAC;AAED,SAAS,0BAA0B,CAEjC,UAAa;IACb,IAAI,UAAU,CAAC,EAAE,KAAK,SAAS;QAC7B,OAAO;YACL,EAAE,EAAE,SAAS;YACb,SAAS,EAAE,UAAU,CAAC,SAAS;SACH,CAAC;IACjC,IAAI,UAAU,CAAC,EAAE,KAAK,aAAa,EAAE,CAAC;QACpC,OAAO;YACL,EAAE,EAAE,aAAa;YACjB,SAAS,EAAE,UAAU,CAAC,SAAS;YAC/B,UAAU,EAAE,MAAM,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;gBAC9C,CAAC,CAAC,CAAC;gBACH,CAAC,CAAC,UAAU,CAAC,UAAU;YACzB,KAAK,EACH,UAAU,CAAC,KAAK,KAAK,IAAI,IAAI,MAAM,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gBAC1D,CAAC,CAAC,CAAC;gBACH,CAAC,CAAC,UAAU,CAAC,KAAK;SACM,CAAC;IACjC,CAAC;IACD,IAAI,UAAU,CAAC,EAAE,KAAK,UAAU,EAAE,CAAC;QACjC,OAAO;YACL,EAAE,EAAE,UAAU;YACd,IAAI,EAAE,0BAA0B,CAAC,UAAU,CAAC,IAAI,CAAC;YACjD,KAAK,EAAE,0BAA0B,CAAC,UAAU,CAAC,KAAK,CAAC;SACvB,CAAC;IACjC,CAAC;IACD,OAAO;QACL,EAAE,EAAE,KAAK;QACT,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,0BAA0B,CAAC,IAAI,CAAC,CAAC;KAChC,CAAC;AAC5C,CAAC;AAED,SAAS,uBAAuB,CAC9B,UAAoC;IAEpC,IAAI,UAAU,CAAC,EAAE,KAAK,MAAM;QAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,EAAE,CAAC;IAC3E,IAAI,UAAU,CAAC,EAAE,KAAK,UAAU,EAAE,CAAC;QACjC,OAAO;YACL,EAAE,EAAE,UAAU;YACd,IAAI,EAAE,uBAAuB,CAAC,UAAU,CAAC,IAAI,CAAC;YAC9C,KAAK,EAAE,uBAAuB,CAAC,UAAU,CAAC,KAAK,CAAC;SACjD,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,uBAAuB,CAAC,EAAE,CAAC;AAC7E,CAAC;AAED,SAAS,kBAAkB,CACzB,SAA+D;IAE/D,OAAO;QACL,QAAQ,EAAE,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,QAAQ,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;YAC/C,CAAC,CAAC,CAAC;YACH,CAAC,CAAC,CAAC,SAAS,EAAE,QAAQ,IAAI,CAAC,CAAC;QAC9B,QAAQ,EAAE,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,QAAQ,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;YAC/C,CAAC,CAAC,CAAC;YACH,CAAC,CAAC,CAAC,SAAS,EAAE,QAAQ,IAAI,CAAC,CAAC;KAC/B,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAC3B,OAA8B;IAE9B,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QACjC,OAAO;YACL,MAAM,EAAE,SAAS;YACjB,UAAU,EAAE,0BAA0B,CAAC,OAAO,CAAC,UAAU,CAAC;SAC3D,CAAC;IACJ,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,KAAK,aAAa;QAClC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC;IACzD,OAAO;QACL,MAAM,EAAE,UAAU;QAClB,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK;KACxD,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAC7B,OAAgC;IAEhC,IAAI,OAAO,CAAC,EAAE,KAAK,UAAU;QAC3B,OAAO;YACL,EAAE,EAAE,UAAU;YACd,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK;SACxD,CAAC;IACJ,OAAO,0BAA0B,CAAC,OAAO,CAAC,CAAC;AAC7C,CAAC;AAED,SAAS,qBAAqB,CAC5B,MAA8B,EAC9B,IAA0B;IAE1B,MAAM,aAAa,GAAG,CACpB,IAA4B,EAC5B,MAAqC,EACrC,EAAE,CACF,MAAM,KAAK,SAAS;QAClB,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,YAAY,CACV,MAAM,CAAC,GAAG,CACR,CAAC,KAAK,EAAE,EAAE,CACR,iCAAiC,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAE,CAAC,KAAK,CAC9D,CACF,CAAC;IACR,MAAM,YAAY,GAAG,CACnB,IAA4B,EAC5B,KAAyB,EACzB,EAAE,CACF,KAAK,KAAK,SAAS;QACjB,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,iCAAiC,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAE,CAAC,KAAK,CAAC;IAClE,OAAO;QACL,YAAY,EACV,MAAM,CAAC,YAAY,KAAK,SAAS;YAC/B,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,YAAY,CAAC;QACvC,OAAO,EAAE,aAAa,CAAC,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC;QAChD,UAAU,EAAE,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,UAAU,CAAC;QACrD,aAAa,EAAE,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,aAAa,CAAC;QAC3D,UAAU,EAAE,aAAa,CAAC,WAAW,EAAE,MAAM,CAAC,UAAU,CAAC;QACzD,aAAa,EAAE,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,aAAa,CAAC;QAC9D,gBAAgB,EAAE,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,gBAAgB,CAAC;QACpE,iBAAiB,EACf,MAAM,CAAC,iBAAiB,KAAK,SAAS;YACpC,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC;gBACvC,CAAC,CAAC,CAAC;gBACH,CAAC,CAAC,MAAM,CAAC,iBAAiB;QAChC,iBAAiB,EACf,MAAM,CAAC,iBAAiB,KAAK,SAAS;YACpC,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC;gBACvC,CAAC,CAAC,CAAC;gBACH,CAAC,CAAC,MAAM,CAAC,iBAAiB;KACjC,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAC1B,IAA0B;IAE1B,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QAC7B,OAAO;YACL,IAAI,EAAE,UAAU;YAChB,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;YACvC,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,eAAe,EAAE,IAAI,CAAC,eAAe;YACrC,OAAO,EAAE,OAAO;YAChB,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS;SAC9D,CAAC;IACJ,CAAC;IACD,MAAM,WAAW,GAAG,CAAC,MAA2B,EAAE,EAAE,CAClD,MAAM;SACH,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;QACpB,KAAK,EAAE,UAAU,CAAC,KAAK;QACvB,OAAO,EAAE,YAAY,CAAC,UAAU,CAAC,OAAO,IAAI,EAAE,CAAC;QAC/C,UAAU,EAAE,MAAM,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;YAC9C,CAAC,CAAC,CAAC;YACH,CAAC,CAAC,UAAU,CAAC,UAAU;KAC1B,CAAC,CAAC;SACF,IAAI,CACH,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CACd,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU;QAClC,gBAAgB,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAC5C,CAAC;IACN,OAAO;QACL,IAAI,EAAE,SAAS;QACf,EAAE,EAAE,IAAI,CAAC,EAAE;QACX,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS;QAC7D,OAAO,EAAE,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC;QAClC,UAAU,EAAE,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC;KACzC,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAC7B,WAA0D;IAE1D,MAAM,QAAQ,GAAG,IAAI,GAAG,CACtB,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC,CAC1E,CAAC;IACF,MAAM,SAAS,GAAG,IAAI,GAAG,CACvB,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC,CAC7D,CAAC;IACF,MAAM,cAAc,GAAG,IAAI,GAAG,EAAU,CAAC;IACzC,MAAM,OAAO,GAAyC,EAAE,CAAC;IACzD,OAAO,SAAS,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;QAC1B,MAAM,KAAK,GAAG,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC;aAClC,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE,CACrB,sBAAsB,CAAC,UAAU,CAAC,UAAU,CAAC;aAC1C,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;aAChC,KAAK,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CACzC;aACA,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;QAC9D,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YACpB,OAAO,CAAC,GAAG,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAC3C,gBAAgB,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC,CACpC,CAAC;QACJ,KAAK,MAAM,UAAU,IAAI,KAAK,EAAE,CAAC;YAC/B,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACzB,cAAc,CAAC,GAAG,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;YAC/C,SAAS,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,mBAAmB,CAC1B,IAA0B,EAC1B,IAA0B;IAE1B,MAAM,IAAI,GAAuC;QAC/C,EAAE,EAAE,IAAI,CAAC,EAAE;QACX,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,YAAY,EAAE,IAAI,CAAC,YAAY;QAC/B,SAAS,EAAE,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC;KAC9C,CAAC;IACF,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC5B,OAAO;YACL,GAAG,IAAI;YACP,IAAI,EAAE,SAAS;YACf,IAAI,EAAE;gBACJ,IAAI,EAAE,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;gBAC5C,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ;gBAC5B,KAAK,EAAE,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;aAC/C;SACF,CAAC;IACJ,CAAC;IACD,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;QAC9B,OAAO;YACL,GAAG,IAAI;YACP,IAAI,EAAE,WAAW;YACjB,MAAM,EAAE,0BAA0B,CAAC,IAAI,CAAC,MAAM,CAAC;YAC/C,QAAQ,EAAE,sBAAsB,CAAC,IAAI,CAAC,QAAQ,CAAC;SAChD,CAAC;IACJ,CAAC;IACD,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;QAC9B,OAAO;YACL,GAAG,IAAI;YACP,IAAI,EAAE,WAAW;YACjB,UAAU,EAAE,0BAA0B,CAAC,IAAI,CAAC,UAAU,CAAC;YACvD,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B,CAAC;IACJ,CAAC;IACD,IAAI,IAAI,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;QAChC,OAAO;YACL,GAAG,IAAI;YACP,IAAI,EAAE,aAAa;YACnB,QAAQ,EAAE,0BAA0B,CAAC,IAAI,CAAC,QAAQ,CAAC;YACnD,OAAO,EAAE,0BAA0B,CAAC,IAAI,CAAC,OAAO,CAAC;YACjD,aAAa,EAAE,kBAAkB,CAAC,IAAI,CAAC,aAAa,CAAC;SACtD,CAAC;IACJ,CAAC;IACD,OAAO;QACL,GAAG,IAAI;QACP,IAAI,EAAE,eAAe;QACrB,UAAU,EAAE,0BAA0B,CAAC,IAAI,CAAC,UAAU,CAAC;QACvD,QAAQ,EAAE,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ;QAC1D,MAAM,EACJ,IAAI,CAAC,MAAM,KAAK,SAAS;YACvB,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,qBAAqB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC;QAC9C,UAAU,EACR,IAAI,CAAC,UAAU,CAAC,IAAI,KAAK,WAAW;YAClC,CAAC,CAAC;gBACE,IAAI,EAAE,WAAW;gBACjB,SAAS,EAAE,iCAAiC,CAC1C,IAAI,EACJ,WAAW,EACX,IAAI,CAAC,UAAU,CAAC,SAAS,CACzB,CAAC,KAAK;aACT;YACH,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC;KAC1C,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,6BAA6B,CAC3C,UAAgC;IAEhC,MAAM,UAAU,GAA2C;QACzD,2BAA2B,EAAE,OAAO;QACpC,EAAE,EAAE,UAAU,CAAC,EAAE;QACjB,OAAO,EAAE,UAAU,CAAC,OAAO;QAC3B,YAAY,EAAE,UAAU,CAAC,YAAY;QACrC,QAAQ,EAAE,UAAU,CAAC,QAAQ;aAC1B,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YACjB,EAAE,EAAE,OAAO,CAAC,EAAE;YACd,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,oBAAoB,EAAE,OAAO,CAAC,oBAAoB;YAClD,WAAW,EAAE,KAAc;YAC3B,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,IAAI;YAChC,iBAAiB,EAAE,OAAO,CAAC,iBAAiB,IAAI,IAAI;YACpD,eAAe,EAAE,OAAO,CAAC,eAAe,IAAI,IAAI;YAChD,cAAc,EAAE,OAAO,CAAC,cAAc,IAAI,IAAI;SAC/C,CAAC,CAAC;aACF,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;QAC7D,gBAAgB,EAAE,UAAU,CAAC,gBAAgB;aAC1C,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;YACpB,EAAE,EAAE,UAAU,CAAC,EAAE;YACjB,WAAW,EAAE,UAAU,CAAC,WAAW;YACnC,OAAO,EAAE,UAAU,CAAC,OAAO;YAC3B,IAAI,EAAE,UAAU,CAAC,IAAI;YACrB,WAAW,EAAE,UAAU,CAAC,WAAW;YACnC,UAAU,EAAE,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC;SAC9C,CAAC,CAAC;aACF,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;QAC7D,aAAa,EAAE,UAAU,CAAC,aAAa;aACpC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YACf,EAAE,EAAE,KAAK,CAAC,EAAE;YACZ,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,IAAI,IAAI;YAClD,UAAU,EAAE,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC;SACzC,CAAC,CAAC;aACF,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;QAC7D,WAAW,EAAE,UAAU,CAAC,WAAW;aAChC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YACf,EAAE,EAAE,KAAK,CAAC,EAAE;YACZ,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,UAAU,EAAE,KAAK,CAAC,UAAU;iBACzB,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;gBACnB,EAAE,EAAE,SAAS,CAAC,EAAE;gBAChB,SAAS,EAAE,SAAS,CAAC,SAAS;gBAC9B,UAAU,EAAE,mBAAmB,CAAC,SAAS,CAAC,UAAU,CAAC;aACtD,CAAC,CAAC;iBACF,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;YAC7D,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,IAAI,IAAI;YAClD,UAAU,EAAE,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC;SACzC,CAAC,CAAC;aACF,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;QAC7D,eAAe,EAAE,sBAAsB,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC,GAAG,CACrE,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;YACf,EAAE,EAAE,UAAU,CAAC,EAAE;YACjB,eAAe,EAAE,UAAU,CAAC,eAAe;YAC3C,UAAU,EAAE,0BAA0B,CAAC,UAAU,CAAC,UAAU,CAAC;SAC9D,CAAC,CACH;QACD,QAAQ,EAAE,UAAU,CAAC,QAAQ;aAC1B,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YACjB,EAAE,EAAE,OAAO,CAAC,EAAE;YACd,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,KAAK,EAAE,YAAY,CACjB,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAC/B,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,CACf;gBACE,IAAI;gBACJ;oBACE,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,kBAAkB,EAAE,IAAI,CAAC,kBAAkB,IAAI,IAAI;oBACnD,oBAAoB,EAAE,IAAI,CAAC,oBAAoB,IAAI,IAAI;iBACxD;aACO,CACb,CACF;YACD,SAAS,EAAE,uBAAuB,CAAC,OAAO,CAAC,SAAS,CAAC;YACrD,WAAW,EAAE,uBAAuB,CAAC,OAAO,CAAC,WAAW,CAAC;YACzD,iBAAiB,EAAE,kBAA2B;SAC/C,CAAC,CAAC;aACF,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;QAC7D,SAAS,EAAE,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;YACjD,EAAE,EAAE,QAAQ,CAAC,EAAE;YACf,OAAO,EAAE,QAAQ,CAAC,OAAO;YACzB,SAAS,EAAE,QAAQ,CAAC,SAAS;YAC7B,QAAQ,EAAE,YAAY,CACpB,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,GAAG,CACnC,CAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE,EAAE,CACrB,CAAC,IAAI,EAAE,0BAA0B,CAAC,UAAU,CAAC,CAAU,CAC1D,CACF;YACD,YAAY,EAAE;gBACZ,WAAW,EAAE,QAAQ,CAAC,YAAY,CAAC,WAAW;gBAC9C,WAAW,EAAE,QAAQ,CAAC,YAAY,CAAC,WAAW;gBAC9C,WAAW,EAAE,QAAQ,CAAC,YAAY,CAAC,WAAW;gBAC9C,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;oBAC/C,CAAC,CAAC,CAAC;oBACH,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,KAAK;gBAC/B,cAAc,EAAE,QAAQ,CAAC,YAAY,CAAC,cAAc;gBACpD,gBAAgB,EAAE,QAAQ,CAAC,YAAY,CAAC,gBAAgB;aACzD;YACD,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBACnC,EAAE,EAAE,IAAI,CAAC,EAAE;gBACX,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,IAAI,EAAE;oBACJ,IAAI,EAAE,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;oBAC1C,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ;oBAC5B,KAAK,EAAE,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;oBAC5C,SAAS,EAAE,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC;iBACnD;aACF,CAAC,CAAC;SACJ,CAAC,CAAC;QACH,WAAW,EAAE,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAC/C,mBAAmB,CAAC,IAAI,EAAE,UAAU,CAAC,UAAU,CAAC,CACjD;QACD,UAAU,EAAE,mBAAmB,CAAC,UAAU,CAAC,UAAU,CAAC;KACvD,CAAC;IACF,OAAO,UAAU,CAAC,UAAU,CAAC,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,iCAAiC,CAC/C,MAAgC;IAEhC,OAAO,UAAU,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,UAAU,EAAE,MAAM,CAAC,UAAU,IAAI,IAAI;QACrC,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI,IAAI;QACvC,SAAS,EACP,MAAM,CAAC,SAAS,KAAK,SAAS;YAC5B,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;gBAC/B,CAAC,CAAC,CAAC;gBACH,CAAC,CAAC,MAAM,CAAC,SAAS;QACxB,UAAU,EAAE,MAAM,CAAC,UAAU,IAAI,IAAI;KACtC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,sBAAsB,CAC7B,UAAmE;IAEnE,IAAI,UAAU,CAAC,EAAE,KAAK,SAAS,IAAI,UAAU,CAAC,EAAE,KAAK,aAAa;QAChE,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;IAChC,IAAI,UAAU,CAAC,EAAE,KAAK,UAAU;QAC9B,OAAO,YAAY,CAAC;YAClB,GAAG,sBAAsB,CAAC,UAAU,CAAC,IAAI,CAAC;YAC1C,GAAG,sBAAsB,CAAC,UAAU,CAAC,KAAK,CAAC;SAC5C,CAAC,CAAC;IACL,OAAO,YAAY,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC,CAAC;AACxE,CAAC;AAED,SAAS,uBAAuB,CAC9B,OAAsD;IAEtD,OAAO,OAAO,CAAC,MAAM,KAAK,SAAS;QACjC,CAAC,CAAC,sBAAsB,CAAC,OAAO,CAAC,UAAU,CAAC;QAC5C,CAAC,CAAC,EAAE,CAAC;AACT,CAAC;AAED,SAAS,GAAG,CAAsB,IAAO,EAAE,QAAgB,EAAE,KAAQ;IACnE,OAAO,kBAAkB,OAAO,CAC9B,aAAa,CAAC;QACZ,eAAe,EAAE,CAAC;QAClB,IAAI;QACJ,CAAC,QAAQ,CAAC,EAAE,KAAK;KAClB,CAAC,CACH,EAAE,CAAC;AACN,CAAC;AAoBD,MAAM,UAAU,yBAAyB,CACvC,UAA0E;IAE1E,MAAM,QAAQ,GAAG,IAAI,GAAG,CACtB,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,CAC5D,CAAC;IACF,MAAM,QAAQ,GAAG,IAAI,GAAG,CACtB,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,CAC5D,CAAC;IACF,MAAM,WAAW,GAAG,IAAI,GAAG,CACzB,UAAU,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC;QAC7C,UAAU,CAAC,eAAe;QAC1B,UAAU;KACX,CAAC,CACH,CAAC;IACF,MAAM,WAAW,GAAG,IAAI,GAAG,CACzB,UAAU,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC;QAC9C,UAAU,CAAC,EAAE;QACb,UAAU;KACX,CAAC,CACH,CAAC;IACF,MAAM,aAAa,GAAG,IAAI,GAAG,CAC3B,UAAU,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,CAC3D,CAAC;IACF,MAAM,WAAW,GAAG,IAAI,GAAG,CACzB,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,CACzD,CAAC;IAEF,MAAM,mBAAmB,GAAG,YAAY,CACtC,UAAU,CAAC,QAAQ,CAAC,GAAG,CACrB,CAAC,OAAO,EAAE,EAAE,CACV,CAAC,OAAO,CAAC,EAAE,EAAE,GAAG,CAAC,oBAAoB,EAAE,SAAS,EAAE,OAAO,CAAC,CAAU,CACvE,CACF,CAAC;IACF,MAAM,uBAAuB,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAA2B,CAAC;IAC9E,MAAM,6BAA6B,GAAG,IAAI,GAAG,EAG1C,CAAC;IACJ,MAAM,mCAAmC,GAAG,IAAI,GAAG,EAGhD,CAAC;IACJ,MAAM,kCAAkC,GAAG,IAAI,GAAG,EAG/C,CAAC;IAEJ,MAAM,sBAAsB,GAAG,CAC7B,KAAwB,EACL,EAAE;QACrB,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;QAChC,MAAM,KAAK,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC;QACzB,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,MAAM,EAAE,GAAG,KAAK,CAAC,GAAG,EAAG,CAAC;YACxB,IAAI,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;gBAAE,SAAS;YAC5B,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACd,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACvC,IAAI,UAAU;gBACZ,KAAK,CAAC,IAAI,CAAC,GAAG,sBAAsB,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC;QACjE,CAAC;QACD,OAAO,CAAC,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAC3C,CAAC,CAAC;IAEF,KAAK,MAAM,QAAQ,IAAI,UAAU,CAAC,SAAS,EAAE,CAAC;QAC5C,MAAM,uBAAuB,GAAG,sBAAsB,CACpD,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,sBAAsB,CAAC,CACjE,CAAC;QACF,MAAM,sBAAsB,GAAG,sBAAsB,CAAC;YACpD,GAAG,uBAAuB;YAC1B,GAAG,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;gBAClC,GAAG,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;gBAC1C,GAAG,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;aAC5C,CAAC;SACH,CAAC,CAAC;QACH,mCAAmC,CAAC,GAAG,CACrC,QAAQ,CAAC,EAAE,EACX,uBAAuB,CACxB,CAAC;QACF,kCAAkC,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,EAAE,sBAAsB,CAAC,CAAC;QAE5E,MAAM,gBAAgB,GAAG,uBAAuB;aAC7C,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAE,CAAC;aAC9B,MAAM,CAAC,OAAO,CAAC,CAAC;QACnB,MAAM,mBAAmB,GAAG,UAAU,CAAC,eAAe,CAAC,MAAM,CAC3D,CAAC,UAAU,EAAE,EAAE,CACb,uBAAuB,CAAC,QAAQ,CAAC,UAAU,CAAC,eAAe,CAAC,CAC/D,CAAC;QACF,MAAM,kBAAkB,GAAG,YAAY,CACrC,gBAAgB,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CACnC,OAAO,CAAC,iBAAiB,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC,CACtE,CACF,CAAC;QACF,MAAM,gBAAgB,GAAG,YAAY,CACnC,gBAAgB,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CACnC,OAAO,CAAC,eAAe,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC,CAClE,CACF,CAAC;QACF,MAAM,cAAc,GAAG,YAAY,CACjC,gBAAgB,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CACnC,OAAO,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAClD,CACF,CAAC;QACF,MAAM,KAAK,GAAyC;YAClD,kBAAkB,EAAE,mBAAmB,CAAC,QAAQ,CAAC,SAAS,CAAE;YAC5D,QAAQ,EAAE;gBACR,EAAE,EAAE,QAAQ,CAAC,EAAE;gBACf,OAAO,EAAE,QAAQ,CAAC,OAAO;gBACzB,SAAS,EAAE,QAAQ,CAAC,SAAS;gBAC7B,QAAQ,EAAE,QAAQ,CAAC,QAAQ;aAC5B;YACD,YAAY,EAAE,UAAU,CAAC,YAAY;YACrC,QAAQ,EAAE,gBAAgB,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;gBAC3C,EAAE,EAAE,OAAO,CAAC,EAAE;gBACd,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,oBAAoB,EAAE,OAAO,CAAC,oBAAoB;gBAClD,WAAW,EAAE,KAAK;gBAClB,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;gBAC5C,eAAe,EAAE,OAAO,CAAC,eAAe;gBACxC,cAAc,EAAE,OAAO,CAAC,cAAc;aACvC,CAAC,CAAC;YACH,gBAAgB,EAAE,kBAAkB,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;gBAC9C,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,CAAC,EAAE,CAAE,CAAC;gBACxC,OAAO;oBACL,EAAE;oBACF,OAAO,EAAE,UAAU,CAAC,OAAO;oBAC3B,IAAI,EAAE,UAAU,CAAC,IAAI;oBACrB,UAAU,EAAE,UAAU,CAAC,UAAU;iBAClC,CAAC;YACJ,CAAC,CAAC;YACF,aAAa,EAAE,gBAAgB,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;gBACzC,MAAM,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,EAAE,CAAE,CAAC;gBACrC,OAAO;oBACL,EAAE;oBACF,KAAK,EAAE,KAAK,CAAC,KAAK;oBAClB,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,UAAU,EAAE,KAAK,CAAC,UAAU;iBAC7B,CAAC;YACJ,CAAC,CAAC;YACF,WAAW,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;gBACrC,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,CAAC,EAAE,CAAE,CAAC;gBACnC,OAAO;oBACL,EAAE;oBACF,QAAQ,EAAE,KAAK,CAAC,QAAQ;oBACxB,WAAW,EAAE,KAAK,CAAC,WAAW;oBAC9B,UAAU,EAAE,KAAK,CAAC,UAAU;oBAC5B,UAAU,EAAE,KAAK,CAAC,UAAU;iBAC7B,CAAC;YACJ,CAAC,CAAC;YACF,eAAe,EAAE,mBAAmB;SACrC,CAAC;QACF,MAAM,WAAW,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;QACtC,6BAA6B,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC;QAC5D,uBAAuB,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,GAAG,CACxC,wBAAwB,EACxB,aAAa,EACb,WAAW,CACZ,CAAC;IACJ,CAAC;IAED,OAAO;QACL,mBAAmB,EAAE,UAAU,CAAC,mBAAmB,CAAC;QACpD,uBAAuB,EAAE,UAAU,CACjC,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC,CACtD;QACD,mBAAmB,EAAE,GAAG,CAAC,uBAAuB,EAAE,YAAY,EAAE,UAAU,CAAC;QAC3E,6BAA6B;QAC7B,mCAAmC;QACnC,kCAAkC;KACnC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,8 @@
1
+ import type { DiagnosticMeasureContribution, DiagnosticStructuralBlocker } from "./diagnosticAggregation.js";
2
+ import type { DiagnosticMetricFinding } from "./diagnosticFormulas.js";
3
+ /** Section 15 total order, for values already validated by a public boundary. */
4
+ export declare function compareDiagnosticIdentityValues(left: unknown, right: unknown): number;
5
+ export declare function compareDiagnosticFindings(left: DiagnosticMetricFinding, right: DiagnosticMetricFinding): number;
6
+ export declare function compareDiagnosticContributions(left: DiagnosticMeasureContribution, right: DiagnosticMeasureContribution): number;
7
+ export declare function compareDiagnosticBlockers(left: DiagnosticStructuralBlocker, right: DiagnosticStructuralBlocker): number;
8
+ //# sourceMappingURL=diagnosticOrdering.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diagnosticOrdering.d.ts","sourceRoot":"","sources":["../src/diagnosticOrdering.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,6BAA6B,EAC7B,2BAA2B,EAC5B,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAIvE,iFAAiF;AACjF,wBAAgB,+BAA+B,CAC7C,IAAI,EAAE,OAAO,EACb,KAAK,EAAE,OAAO,GACb,MAAM,CAoBR;AAaD,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,uBAAuB,EAC7B,KAAK,EAAE,uBAAuB,GAC7B,MAAM,CA4BR;AAED,wBAAgB,8BAA8B,CAC5C,IAAI,EAAE,6BAA6B,EACnC,KAAK,EAAE,6BAA6B,GACnC,MAAM,CASR;AAED,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,2BAA2B,EACjC,KAAK,EAAE,2BAA2B,GACjC,MAAM,CASR"}
@@ -0,0 +1,73 @@
1
+ import { canonicalJson } from "./canonical.js";
2
+ import { compareDiagnosticSourceLocations } from "./diagnosticSourceOrdering.js";
3
+ /** Section 15 total order, for values already validated by a public boundary. */
4
+ export function compareDiagnosticIdentityValues(left, right) {
5
+ if (left === right)
6
+ return 0;
7
+ if (left === undefined)
8
+ return -1;
9
+ if (right === undefined)
10
+ return 1;
11
+ if (left === null)
12
+ return -1;
13
+ if (right === null)
14
+ return 1;
15
+ if (typeof left === "number" && typeof right === "number")
16
+ return left - right;
17
+ if (typeof left === "boolean" && typeof right === "boolean")
18
+ return Number(left) - Number(right);
19
+ if (Array.isArray(left) && Array.isArray(right)) {
20
+ for (let i = 0; i < Math.min(left.length, right.length); i++) {
21
+ const comparison = compareDiagnosticIdentityValues(left[i], right[i]);
22
+ if (comparison !== 0)
23
+ return comparison;
24
+ }
25
+ return left.length - right.length;
26
+ }
27
+ const a = typeof left === "string" ? left : canonicalJson(left);
28
+ const b = typeof right === "string" ? right : canonicalJson(right);
29
+ return a < b ? -1 : a > b ? 1 : 0;
30
+ }
31
+ function compareSources(left, right) {
32
+ for (let i = 0; i < Math.min(left.length, right.length); i++) {
33
+ const comparison = compareDiagnosticSourceLocations(left[i], right[i]);
34
+ if (comparison !== 0)
35
+ return comparison;
36
+ }
37
+ return left.length - right.length;
38
+ }
39
+ export function compareDiagnosticFindings(left, right) {
40
+ const fields = [
41
+ "category",
42
+ "severity",
43
+ "code",
44
+ "ruleId",
45
+ "instanceId",
46
+ "measureId",
47
+ "expressionPath",
48
+ "sourceGroup",
49
+ "group",
50
+ "origin",
51
+ "valuation",
52
+ "developmentAge",
53
+ "ageUnit",
54
+ "recordId",
55
+ "claimId",
56
+ "exposureKey",
57
+ "message",
58
+ ];
59
+ return (compareDiagnosticIdentityValues(fields.map((key) => left[key]), fields.map((key) => right[key])) ||
60
+ compareDiagnosticIdentityValues(left.offendingKey, right.offendingKey) ||
61
+ compareSources(left.sources, right.sources));
62
+ }
63
+ export function compareDiagnosticContributions(left, right) {
64
+ return (compareDiagnosticIdentityValues([left.sourceId, left.status, left.deduplicated], [right.sourceId, right.status, right.deduplicated]) ||
65
+ compareSources(left.sources, right.sources) ||
66
+ compareDiagnosticIdentityValues(left, right));
67
+ }
68
+ export function compareDiagnosticBlockers(left, right) {
69
+ return (compareDiagnosticIdentityValues([left.code, left.message, left.sourceIds], [right.code, right.message, right.sourceIds]) ||
70
+ compareSources(left.sources, right.sources) ||
71
+ compareDiagnosticIdentityValues(left.finding, right.finding));
72
+ }
73
+ //# sourceMappingURL=diagnosticOrdering.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diagnosticOrdering.js","sourceRoot":"","sources":["../src/diagnosticOrdering.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import type { DiagnosticPeriodAxis } from "./diagnosticDefinitions.js";
2
+ export interface NormalizedDiagnosticAxisPeriod {
3
+ readonly label: string;
4
+ readonly coordinate: number;
5
+ }
6
+ export type DiagnosticPeriodSide = "origin" | "valuation";
7
+ /** Pure axis-level period normalization shared by compilation and execution. */
8
+ export declare function normalizeDiagnosticPeriodWithAxis(axis: DiagnosticPeriodAxis, side: DiagnosticPeriodSide, label: unknown): NormalizedDiagnosticAxisPeriod | null;
9
+ //# sourceMappingURL=diagnosticPeriodAxis.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diagnosticPeriodAxis.d.ts","sourceRoot":"","sources":["../src/diagnosticPeriodAxis.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAEvE,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,MAAM,oBAAoB,GAAG,QAAQ,GAAG,WAAW,CAAC;AAsC1D,gFAAgF;AAChF,wBAAgB,iCAAiC,CAC/C,IAAI,EAAE,oBAAoB,EAC1B,IAAI,EAAE,oBAAoB,EAC1B,KAAK,EAAE,OAAO,GACb,8BAA8B,GAAG,IAAI,CAyCvC"}
@@ -0,0 +1,69 @@
1
+ function calendarCoordinate(label, cadence, anchor) {
2
+ let year;
3
+ let start;
4
+ let width;
5
+ if (cadence === "year") {
6
+ const match = /^(\d{4})$/.exec(label);
7
+ if (!match)
8
+ return null;
9
+ year = Number(match[1]);
10
+ start = year * 12;
11
+ width = 12;
12
+ }
13
+ else if (cadence === "month") {
14
+ const match = /^(\d{4})-(0[1-9]|1[0-2])$/.exec(label);
15
+ if (!match)
16
+ return null;
17
+ year = Number(match[1]);
18
+ start = year * 12 + Number(match[2]) - 1;
19
+ width = 1;
20
+ }
21
+ else {
22
+ const compact = /^(\d{4})Q([1-4])$/.exec(label);
23
+ const hyphenated = /^(\d{4})-Q([1-4])$/.exec(label);
24
+ const first = /^Q([1-4]) (\d{4})$/.exec(label);
25
+ const match = compact ?? hyphenated ?? first;
26
+ if (!match)
27
+ return null;
28
+ const quarterFirst = match === first;
29
+ year = Number(match[quarterFirst ? 2 : 1]);
30
+ const quarter = Number(match[quarterFirst ? 1 : 2]);
31
+ start = year * 12 + (quarter - 1) * 3;
32
+ width = 3;
33
+ }
34
+ if (year < 1 || year > 9999)
35
+ return null;
36
+ return start + (anchor === "end" ? width : 0);
37
+ }
38
+ /** Pure axis-level period normalization shared by compilation and execution. */
39
+ export function normalizeDiagnosticPeriodWithAxis(axis, side, label) {
40
+ if (typeof label !== "string" || axis === null || typeof axis !== "object")
41
+ return null;
42
+ if (axis.kind === "calendar") {
43
+ const cadence = side === "origin" ? axis.originCadence : axis.valuationCadence;
44
+ const anchor = side === "origin" ? axis.originAnchor : axis.valuationAnchor;
45
+ if (!["month", "quarter", "year"].includes(cadence) ||
46
+ !["start", "end"].includes(anchor))
47
+ return null;
48
+ const coordinate = calendarCoordinate(label, cadence, anchor);
49
+ if (coordinate === null)
50
+ return null;
51
+ const canonicalLabel = cadence === "quarter"
52
+ ? (() => {
53
+ const startCoordinate = calendarCoordinate(label, cadence, "start");
54
+ const year = Math.floor(startCoordinate / 12);
55
+ return `${String(year).padStart(4, "0")}-Q${Math.floor((startCoordinate % 12) / 3) + 1}`;
56
+ })()
57
+ : label;
58
+ return { label: canonicalLabel, coordinate };
59
+ }
60
+ if (axis.kind !== "ordered" ||
61
+ !Array.isArray(axis[side === "origin" ? "origins" : "valuations"]))
62
+ return null;
63
+ const catalog = side === "origin" ? axis.origins : axis.valuations;
64
+ const item = catalog.find((coordinate) => coordinate?.label === label || coordinate?.aliases?.includes(label));
65
+ return item && typeof item.coordinate === "number"
66
+ ? { label: item.label, coordinate: item.coordinate }
67
+ : null;
68
+ }
69
+ //# sourceMappingURL=diagnosticPeriodAxis.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diagnosticPeriodAxis.js","sourceRoot":"","sources":["../src/diagnosticPeriodAxis.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import type { CompiledDiagnosticDefinition } from "./diagnosticDefinitions.js";
2
+ import { type DiagnosticPeriodSide } from "./diagnosticPeriodAxis.js";
3
+ export interface DiagnosticNormalizedPeriod {
4
+ readonly label: string;
5
+ readonly coordinate: number;
6
+ }
7
+ export declare function normalizeDiagnosticPeriod(definition: CompiledDiagnosticDefinition, side: DiagnosticPeriodSide, label: string): DiagnosticNormalizedPeriod;
8
+ export declare function diagnosticDevelopmentAge(definition: CompiledDiagnosticDefinition, origin: string, valuation: string): {
9
+ readonly origin: DiagnosticNormalizedPeriod;
10
+ readonly valuation: DiagnosticNormalizedPeriod;
11
+ readonly developmentAge: number;
12
+ readonly ageUnit: string;
13
+ };
14
+ export declare function compareDiagnosticPeriods(left: DiagnosticNormalizedPeriod, right: DiagnosticNormalizedPeriod): number;
15
+ //# sourceMappingURL=diagnosticPeriods.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diagnosticPeriods.d.ts","sourceRoot":"","sources":["../src/diagnosticPeriods.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,4BAA4B,EAE7B,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAEL,KAAK,oBAAoB,EAC1B,MAAM,2BAA2B,CAAC;AAGnC,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAuBD,wBAAgB,yBAAyB,CACvC,UAAU,EAAE,4BAA4B,EACxC,IAAI,EAAE,oBAAoB,EAC1B,KAAK,EAAE,MAAM,GACZ,0BAA0B,CAO5B;AAED,wBAAgB,wBAAwB,CACtC,UAAU,EAAE,4BAA4B,EACxC,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAChB;IACD,QAAQ,CAAC,MAAM,EAAE,0BAA0B,CAAC;IAC5C,QAAQ,CAAC,SAAS,EAAE,0BAA0B,CAAC;IAC/C,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B,CAgCA;AAED,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,0BAA0B,EAChC,KAAK,EAAE,0BAA0B,GAChC,MAAM,CAKR"}
@@ -0,0 +1,50 @@
1
+ import { assertCompiledDiagnosticDefinition } from "./diagnosticDefinitions.js";
2
+ import { normalizeDiagnosticPeriodWithAxis, } from "./diagnosticPeriodAxis.js";
3
+ import { DiagnosticValidationError } from "./types.js";
4
+ function normalizeWithAxis(axis, side, label) {
5
+ const normalized = normalizeDiagnosticPeriodWithAxis(axis, side, label);
6
+ if (!normalized)
7
+ throw new DiagnosticValidationError([
8
+ {
9
+ domain: "input",
10
+ code: "invalid-period",
11
+ path: `$.${side}`,
12
+ message: axis.kind === "calendar"
13
+ ? `Invalid ${side === "origin" ? axis.originCadence : axis.valuationCadence} ${side} label ${JSON.stringify(label)}`
14
+ : `Unknown ordered-axis ${side} label ${JSON.stringify(label)}`,
15
+ },
16
+ ]);
17
+ return Object.freeze(normalized);
18
+ }
19
+ export function normalizeDiagnosticPeriod(definition, side, label) {
20
+ assertCompiledDiagnosticDefinition(definition);
21
+ return normalizeWithAxis(definition.definition.periodAxis, side, label);
22
+ }
23
+ export function diagnosticDevelopmentAge(definition, origin, valuation) {
24
+ const normalizedOrigin = normalizeDiagnosticPeriod(definition, "origin", origin);
25
+ const normalizedValuation = normalizeDiagnosticPeriod(definition, "valuation", valuation);
26
+ const axis = definition.definition.periodAxis;
27
+ const developmentAge = normalizedValuation.coordinate -
28
+ normalizedOrigin.coordinate +
29
+ axis.ageOffset;
30
+ if (!Number.isSafeInteger(developmentAge) || developmentAge < 0)
31
+ throw new DiagnosticValidationError([
32
+ {
33
+ domain: "input",
34
+ code: "invalid-period",
35
+ path: "$.valuation",
36
+ message: "Valuation period precedes origin period or development age is unsafe",
37
+ },
38
+ ]);
39
+ return Object.freeze({
40
+ origin: normalizedOrigin,
41
+ valuation: normalizedValuation,
42
+ developmentAge,
43
+ ageUnit: axis.ageUnit,
44
+ });
45
+ }
46
+ export function compareDiagnosticPeriods(left, right) {
47
+ return (left.coordinate - right.coordinate ||
48
+ (left.label < right.label ? -1 : left.label > right.label ? 1 : 0));
49
+ }
50
+ //# sourceMappingURL=diagnosticPeriods.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diagnosticPeriods.js","sourceRoot":"","sources":["../src/diagnosticPeriods.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,kCAAkC,EAAE,MAAM,4BAA4B,CAAC;AAChF,OAAO,EACL,iCAAiC,GAElC,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,yBAAyB,EAAE,MAAM,YAAY,CAAC;AAOvD,SAAS,iBAAiB,CACxB,IAA0B,EAC1B,IAA0B,EAC1B,KAAa;IAEb,MAAM,UAAU,GAAG,iCAAiC,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IACxE,IAAI,CAAC,UAAU;QACb,MAAM,IAAI,yBAAyB,CAAC;YAClC;gBACE,MAAM,EAAE,OAAO;gBACf,IAAI,EAAE,gBAAgB;gBACtB,IAAI,EAAE,KAAK,IAAI,EAAE;gBACjB,OAAO,EACL,IAAI,CAAC,IAAI,KAAK,UAAU;oBACtB,CAAC,CAAC,WAAW,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,IAAI,IAAI,UAAU,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE;oBACpH,CAAC,CAAC,wBAAwB,IAAI,UAAU,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE;aACpE;SACF,CAAC,CAAC;IACL,OAAO,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;AACnC,CAAC;AAED,MAAM,UAAU,yBAAyB,CACvC,UAAwC,EACxC,IAA0B,EAC1B,KAAa;IAEb,kCAAkC,CAAC,UAAU,CAAC,CAAC;IAC/C,OAAO,iBAAiB,CACtB,UAAU,CAAC,UAAU,CAAC,UAAkC,EACxD,IAAI,EACJ,KAAK,CACN,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,UAAwC,EACxC,MAAc,EACd,SAAiB;IAOjB,MAAM,gBAAgB,GAAG,yBAAyB,CAChD,UAAU,EACV,QAAQ,EACR,MAAM,CACP,CAAC;IACF,MAAM,mBAAmB,GAAG,yBAAyB,CACnD,UAAU,EACV,WAAW,EACX,SAAS,CACV,CAAC;IACF,MAAM,IAAI,GAAG,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC;IAC9C,MAAM,cAAc,GAClB,mBAAmB,CAAC,UAAU;QAC9B,gBAAgB,CAAC,UAAU;QAC3B,IAAI,CAAC,SAAS,CAAC;IACjB,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,cAAc,CAAC,IAAI,cAAc,GAAG,CAAC;QAC7D,MAAM,IAAI,yBAAyB,CAAC;YAClC;gBACE,MAAM,EAAE,OAAO;gBACf,IAAI,EAAE,gBAAgB;gBACtB,IAAI,EAAE,aAAa;gBACnB,OAAO,EACL,sEAAsE;aACzE;SACF,CAAC,CAAC;IACL,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,MAAM,EAAE,gBAAgB;QACxB,SAAS,EAAE,mBAAmB;QAC9B,cAAc;QACd,OAAO,EAAE,IAAI,CAAC,OAAO;KACtB,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,IAAgC,EAChC,KAAiC;IAEjC,OAAO,CACL,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU;QAClC,CAAC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CACnE,CAAC;AACJ,CAAC"}
@@ -0,0 +1,131 @@
1
+ import { type DiagnosticIdentityProjection, type NormalizedDiagnosticsFilterIdentity, type NormalizedDiagnosticSourceLocationIdentity } from "./diagnosticIdentity.js";
2
+ import { type CompiledDiagnosticDefinition, type DiagnosticDeepReadonly, type DiagnosticMeasureStats, type DiagnosticSourceLocation, type DiagnosticsFilter, type JsonValue } from "./diagnosticDefinitions.js";
3
+ import { type DiagnosticMeasureContribution, type DiagnosticStructuralBlocker } from "./diagnosticAggregation.js";
4
+ import { type DiagnosticAuditedNumericValue, type DiagnosticExposureAuditObservation, type DiagnosticExposureObservation, type ReconciledDiagnosticExposure } from "./diagnosticExposure.js";
5
+ import type { DiagnosticMetricFinding } from "./diagnosticFormulas.js";
6
+ export interface DiagnosticLossRecordBase {
7
+ readonly recordId: string;
8
+ readonly sourceGroup: string;
9
+ readonly origin: string;
10
+ readonly valuation: string;
11
+ readonly complete: boolean;
12
+ readonly source?: DiagnosticSourceLocation;
13
+ readonly measures: Readonly<Record<string, number | null>>;
14
+ }
15
+ export interface DiagnosticClaimObservation extends DiagnosticLossRecordBase {
16
+ readonly rowType: "claim";
17
+ readonly claimId: string;
18
+ }
19
+ export interface DiagnosticLossSnapshot extends DiagnosticLossRecordBase {
20
+ readonly rowType: "aggregate";
21
+ }
22
+ export type DiagnosticLossInput = DiagnosticClaimObservation | DiagnosticLossSnapshot;
23
+ export interface DiagnosticCompletePeriodCutoff {
24
+ readonly sourceGroup: string;
25
+ readonly originThrough: string | null;
26
+ readonly valuationThrough: string | null;
27
+ }
28
+ export interface DiagnosticExpectedCell {
29
+ readonly sourceGroup: string;
30
+ readonly origin: string;
31
+ readonly valuation: string;
32
+ readonly source?: DiagnosticSourceLocation;
33
+ }
34
+ export interface PrepareDiagnosticDataInput {
35
+ readonly definition: CompiledDiagnosticDefinition;
36
+ readonly losses: readonly DiagnosticLossInput[];
37
+ readonly exposures: readonly DiagnosticExposureObservation[];
38
+ readonly filter?: DiagnosticsFilter;
39
+ readonly completePeriodCutoffs?: readonly DiagnosticCompletePeriodCutoff[];
40
+ readonly expectedCells?: readonly DiagnosticExpectedCell[];
41
+ }
42
+ export type DiagnosticInputDisposition = "invalid" | "complete-period-cutoff" | "filter" | "retained";
43
+ export interface DiagnosticLossInputAuditSnapshot {
44
+ readonly recordId: string;
45
+ readonly rowType: "claim" | "aggregate";
46
+ readonly claimId: string | null;
47
+ readonly sourceGroup: string;
48
+ readonly origin: string;
49
+ readonly valuation: string;
50
+ readonly complete: boolean;
51
+ readonly measures: Readonly<Record<string, DiagnosticAuditedNumericValue>>;
52
+ readonly source: DiagnosticSourceLocation | null;
53
+ }
54
+ export interface DiagnosticExposureInputAuditSnapshot {
55
+ readonly key: string;
56
+ readonly sourceGroup: string;
57
+ readonly origin: string;
58
+ readonly valuation: string | null;
59
+ readonly measureId: string;
60
+ readonly value: DiagnosticAuditedNumericValue;
61
+ readonly complete: boolean;
62
+ readonly source: DiagnosticSourceLocation | null;
63
+ }
64
+ export interface DiagnosticExpectedCellAuditSnapshot {
65
+ readonly sourceGroup: string;
66
+ readonly origin: string;
67
+ readonly valuation: string;
68
+ readonly source: DiagnosticSourceLocation | null;
69
+ }
70
+ export type DiagnosticInputAuditRecord = {
71
+ readonly kind: "loss";
72
+ readonly disposition: DiagnosticInputDisposition;
73
+ readonly record: DiagnosticLossInputAuditSnapshot;
74
+ } | {
75
+ readonly kind: "exposure";
76
+ readonly disposition: DiagnosticInputDisposition;
77
+ readonly record: DiagnosticExposureInputAuditSnapshot;
78
+ } | {
79
+ readonly kind: "expected-cell";
80
+ readonly disposition: Exclude<DiagnosticInputDisposition, "invalid">;
81
+ readonly record: DiagnosticExpectedCellAuditSnapshot;
82
+ };
83
+ export interface PreparedDiagnosticSourceCell {
84
+ readonly sourceGroup: string;
85
+ readonly origin: string;
86
+ readonly valuation: string;
87
+ readonly developmentAge: number;
88
+ readonly ageUnit: string;
89
+ readonly lossRecordIds: readonly string[];
90
+ readonly contributions: Readonly<Record<string, readonly DiagnosticMeasureContribution[]>>;
91
+ readonly components: Readonly<Record<string, DiagnosticMeasureStats>>;
92
+ readonly structuralBlockers: Readonly<Record<string, readonly DiagnosticStructuralBlocker[]>>;
93
+ readonly findings: readonly DiagnosticMetricFinding[];
94
+ }
95
+ declare const preparedDiagnosticDataBrand: unique symbol;
96
+ export interface PreparedDiagnosticData {
97
+ readonly [preparedDiagnosticDataBrand]: true;
98
+ readonly definition: CompiledDiagnosticDefinition;
99
+ readonly preparationFingerprint: string;
100
+ readonly filter: DiagnosticDeepReadonly<DiagnosticsFilter> | null;
101
+ readonly completePeriodCutoffs: readonly DiagnosticCompletePeriodCutoff[];
102
+ readonly inputAudit: readonly DiagnosticInputAuditRecord[];
103
+ readonly cells: readonly PreparedDiagnosticSourceCell[];
104
+ readonly exposures: readonly ReconciledDiagnosticExposure[];
105
+ readonly expectedCellsProvided: boolean;
106
+ readonly expectedCells: readonly DiagnosticExpectedCell[];
107
+ readonly findings: readonly DiagnosticMetricFinding[];
108
+ }
109
+ export interface NormalizedDiagnosticPreparationIdentity {
110
+ readonly definitionIntegrity: string;
111
+ readonly filter: NormalizedDiagnosticsFilterIdentity | null;
112
+ readonly completePeriodCutoffs: readonly DiagnosticIdentityProjection<DiagnosticCompletePeriodCutoff>[];
113
+ readonly inputAudit: readonly DiagnosticIdentityProjection<DiagnosticInputAuditRecord>[];
114
+ readonly cells: readonly DiagnosticIdentityProjection<PreparedDiagnosticSourceCell>[];
115
+ readonly exposures: readonly DiagnosticIdentityProjection<ReconciledDiagnosticExposure>[];
116
+ readonly expectedCellsProvided: boolean;
117
+ readonly expectedCells: readonly NormalizedDiagnosticExpectedCellIdentity[];
118
+ readonly findings: readonly DiagnosticIdentityProjection<DiagnosticMetricFinding>[];
119
+ }
120
+ export interface NormalizedDiagnosticExpectedCellIdentity {
121
+ readonly sourceGroup: string;
122
+ readonly origin: string;
123
+ readonly valuation: string;
124
+ readonly source: NormalizedDiagnosticSourceLocationIdentity | null;
125
+ }
126
+ export declare function prepareDiagnosticData(input: PrepareDiagnosticDataInput): PreparedDiagnosticData;
127
+ export declare function assertPreparedDiagnosticData(value: unknown): asserts value is PreparedDiagnosticData;
128
+ export declare function getPreparedDiagnosticDataIdentity(value: PreparedDiagnosticData): DiagnosticDeepReadonly<NormalizedDiagnosticPreparationIdentity>;
129
+ export declare function verifyPreparedDiagnosticDataIntegrity(value: PreparedDiagnosticData): void;
130
+ export type { JsonValue, DiagnosticAuditedNumericValue, DiagnosticExposureAuditObservation, };
131
+ //# sourceMappingURL=diagnosticPreparation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diagnosticPreparation.d.ts","sourceRoot":"","sources":["../src/diagnosticPreparation.ts"],"names":[],"mappings":"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"}