@lynxflow/seo-engine 2.8.0 → 3.2.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.
- package/LICENSE +661 -0
- package/NOTICE +18 -0
- package/README.md +78 -10
- package/bin/lynx-audit +338 -0
- package/dist/ab-experiments-engine.d.ts +55 -0
- package/dist/ab-testing-bandit.d.ts +51 -0
- package/dist/ab-testing-engine.d.ts +70 -0
- package/dist/ab-testing-sequential.d.ts +59 -0
- package/dist/ab-testing-significance.d.ts +67 -0
- package/dist/account-centric-abm.d.ts +73 -0
- package/dist/ad-cost-roas.d.ts +120 -0
- package/dist/ad-intelligence-cro.d.ts +41 -9
- package/dist/ad-matrix-multiplier.d.ts +36 -0
- package/dist/ad-remix-engine.d.ts +79 -0
- package/dist/advanced-retention.d.ts +77 -0
- package/dist/advanced-segmentation.d.ts +117 -0
- package/dist/aeo-geo-engine.d.ts +366 -0
- package/dist/agent-skills-registry.d.ts +29 -0
- package/dist/agent-ux-scorer.d.ts +53 -0
- package/dist/agentic-ads-guardrails.d.ts +94 -0
- package/dist/agentic-browsing-auditor.d.ts +65 -0
- package/dist/ai-bots-log-analyzer.d.ts +6 -2
- package/dist/ai-citation-auditor.d.ts +40 -0
- package/dist/ai-citation-tracker.d.ts +53 -0
- package/dist/ai-copilot-client.d.ts +1 -0
- package/dist/ai-safety-auditor.d.ts +67 -0
- package/dist/ai-targeting-translator.d.ts +24 -0
- package/dist/ai-visibility-tracker.d.ts +70 -0
- package/dist/alerting-thresholds.d.ts +63 -0
- package/dist/analytics/active-dwell-time-calculator.d.ts +59 -0
- package/dist/analytics/ad-audience-sync-engine.d.ts +69 -0
- package/dist/analytics/adaptive-event-sampler.d.ts +44 -0
- package/dist/analytics/ai-agents-tracker.d.ts +63 -0
- package/dist/analytics/ai-generated-search-snippet-synthesizer.d.ts +45 -0
- package/dist/analytics/ai-overviews-citation-passage-relevance-auditor.d.ts +35 -0
- package/dist/analytics/ai-providers-tracker.d.ts +63 -0
- package/dist/analytics/ai-sov.d.ts +21 -0
- package/dist/analytics/alerts-engine.d.ts +24 -0
- package/dist/analytics/anchor-text-diversity-auditor.d.ts +64 -0
- package/dist/analytics/anchor-text-optimization-distribution-analyzer.d.ts +49 -0
- package/dist/analytics/api-playground-generator.d.ts +56 -0
- package/dist/analytics/api-rate-limit-quota-shield.d.ts +60 -0
- package/dist/analytics/attribution-markov-chain-engine.d.ts +48 -0
- package/dist/analytics/attribution.d.ts +8 -0
- package/dist/analytics/automated-analytics-report-renderer.d.ts +71 -0
- package/dist/analytics/b2b-group-analytics-engine.d.ts +64 -0
- package/dist/analytics/bandwidth-calculator.d.ts +34 -0
- package/dist/analytics/batch-export-scheduler.d.ts +82 -0
- package/dist/analytics/behavioral-cohort-analyzer.d.ts +68 -0
- package/dist/analytics/bofu-quick-wins-opportunity-scorer.d.ts +60 -0
- package/dist/analytics/bot-crawl-frequency-predictor.d.ts +61 -0
- package/dist/analytics/bot-signal-bitmask-decoder.d.ts +60 -0
- package/dist/analytics/bot-simulation-diff-auditor.d.ts +59 -0
- package/dist/analytics/breadcrumb-list-microdata-schema-parity-validator.d.ts +45 -0
- package/dist/analytics/broken-image-detector.d.ts +36 -0
- package/dist/analytics/brotli-zstd-compression-efficiency-auditor.d.ts +43 -0
- package/dist/analytics/calendar-heatmap-engine.d.ts +41 -0
- package/dist/analytics/canary-flag-guardrail-engine.d.ts +80 -0
- package/dist/analytics/canonical-integrity-engine.d.ts +51 -0
- package/dist/analytics/canonical-loop-cluster-detector.d.ts +48 -0
- package/dist/analytics/canvas-replay-capture.d.ts +41 -0
- package/dist/analytics/captcha-gate-verifier.d.ts +66 -0
- package/dist/analytics/cart-abandonment-analyzer.d.ts +80 -0
- package/dist/analytics/cdn-edge-cache-hit-ratio-forecaster.d.ts +43 -0
- package/dist/analytics/cdn-edge-routing-latency-analyzer.d.ts +62 -0
- package/dist/analytics/channel-grouping.d.ts +47 -0
- package/dist/analytics/churn-risk-calculator.d.ts +73 -0
- package/dist/analytics/client-error-tracker.d.ts +83 -0
- package/dist/analytics/client-side-hydration-mismatch-differ.d.ts +41 -0
- package/dist/analytics/client-side-memory-leak-dom-detached-nodes-auditor.d.ts +36 -0
- package/dist/analytics/client-side-page-speed-metrics-summary-aggregator.d.ts +56 -0
- package/dist/analytics/client-side-replay-rage-click-aggregator.d.ts +57 -0
- package/dist/analytics/code-canvas-pipeline.d.ts +50 -0
- package/dist/analytics/cohort-ltv-payback-engine.d.ts +68 -0
- package/dist/analytics/cohort-set-algebra-engine.d.ts +107 -0
- package/dist/analytics/cohorts-retention-engine.d.ts +24 -0
- package/dist/analytics/competitor-ad-transparency-inspector.d.ts +89 -0
- package/dist/analytics/constructed-styles-engine.d.ts +34 -0
- package/dist/analytics/content-decay-audit-engine.d.ts +64 -0
- package/dist/analytics/content-interaction-tracker.d.ts +60 -0
- package/dist/analytics/content-keyword-cannibalization-matrix.d.ts +50 -0
- package/dist/analytics/content-readability-flesch-kincaid-engine.d.ts +40 -0
- package/dist/analytics/content-security-policy-directive-violation-auditor.d.ts +28 -0
- package/dist/analytics/content-security-policy-frame-ancestors-clickjacking-auditor.d.ts +30 -0
- package/dist/analytics/conversion-funnel-latency-sensitivity-scorer.d.ts +57 -0
- package/dist/analytics/conversion-path-length-engine.d.ts +62 -0
- package/dist/analytics/cookie-consent-compliance-auditor.d.ts +73 -0
- package/dist/analytics/core-web-vitals-cumulative-tbt-trend-forecaster.d.ts +40 -0
- package/dist/analytics/core-web-vitals-interaction-event-debouncer.d.ts +39 -0
- package/dist/analytics/core-web-vitals-interaction-input-delay-breakdown-profiler.d.ts +40 -0
- package/dist/analytics/core-web-vitals-interaction-target-dom-element-pinpointer.d.ts +41 -0
- package/dist/analytics/core-web-vitals-interaction-timeline-tracer.d.ts +42 -0
- package/dist/analytics/core-web-vitals-lcp-sub-part-waterfall-profiler.d.ts +45 -0
- package/dist/analytics/core-web-vitals-presentation-delay-breakdown-profiler.d.ts +34 -0
- package/dist/analytics/core-web-vitals-ttfb-diagnostic-auditor.d.ts +60 -0
- package/dist/analytics/correlation-analyzer.d.ts +30 -0
- package/dist/analytics/crawl-budget-priority-queue-forecaster.d.ts +39 -0
- package/dist/analytics/crawl-budget-waste-auditor.d.ts +64 -0
- package/dist/analytics/crawl-depth-click-distance-auditor.d.ts +52 -0
- package/dist/analytics/crawl-log-cross-correlation-engine.d.ts +85 -0
- package/dist/analytics/cross-domain-linker.d.ts +50 -0
- package/dist/analytics/crux.d.ts +9 -0
- package/dist/analytics/css-rules-mutation-tracker.d.ts +28 -0
- package/dist/analytics/cumulative-layout-shift-target-element-clusterer.d.ts +57 -0
- package/dist/analytics/currency-converter.d.ts +37 -0
- package/dist/analytics/custom-alerts-engine.d.ts +37 -0
- package/dist/analytics/custom-variables-engine.d.ts +30 -0
- package/dist/analytics/customer-lifetime-value-survival-engine.d.ts +53 -0
- package/dist/analytics/customer-ltv-modeler.d.ts +80 -0
- package/dist/analytics/dashboard-rss-widget.d.ts +110 -0
- package/dist/analytics/data-retention-lifecycle-manager.d.ts +81 -0
- package/dist/analytics/data-staleness-sentinel.d.ts +37 -0
- package/dist/analytics/device-detector-cache.d.ts +39 -0
- package/dist/analytics/device-hardware-engine.d.ts +34 -0
- package/dist/analytics/disavow-file-format-syntax-validator.d.ts +32 -0
- package/dist/analytics/domain-connect-dns.d.ts +50 -0
- package/dist/analytics/domain-connect-provisioner.d.ts +74 -0
- package/dist/analytics/duplicate-title-meta-description-cluster-matrix.d.ts +40 -0
- package/dist/analytics/dynamic-render-cloaking-detector.d.ts +45 -0
- package/dist/analytics/ecommerce-merchandise-funnel-auditor.d.ts +60 -0
- package/dist/analytics/engagement-matrix-analyzer.d.ts +72 -0
- package/dist/analytics/event-match-quality.d.ts +53 -0
- package/dist/analytics/event-transformation-runtime.d.ts +76 -0
- package/dist/analytics/events.d.ts +24 -0
- package/dist/analytics/excessive-dom-depth-node-count-auditor.d.ts +47 -0
- package/dist/analytics/experiment-running-time-calculator.d.ts +53 -0
- package/dist/analytics/experiment-sample-size-sequential-testing-engine.d.ts +46 -0
- package/dist/analytics/exports.d.ts +2 -0
- package/dist/analytics/facet-url-combinatorial-trap-auditor.d.ts +45 -0
- package/dist/analytics/feature-flag-dormancy-auditor.d.ts +59 -0
- package/dist/analytics/feature-flag-evaluator.d.ts +49 -0
- package/dist/analytics/flag-blast-radius-simulator.d.ts +61 -0
- package/dist/analytics/font-display-cls-layout-shift-auditor.d.ts +51 -0
- package/dist/analytics/font-loading-observer.d.ts +37 -0
- package/dist/analytics/font-preload-unused-bandwidth-waste-auditor.d.ts +40 -0
- package/dist/analytics/font-subsetting-unicode-range-optimizer.d.ts +41 -0
- package/dist/analytics/form-input-friction-tracker.d.ts +38 -0
- package/dist/analytics/frustration-analyzer.d.ts +117 -0
- package/dist/analytics/frustration-signals-engine.d.ts +88 -0
- package/dist/analytics/funnel-velocity-engine.d.ts +55 -0
- package/dist/analytics/funnels.d.ts +22 -0
- package/dist/analytics/ga4-data-transpiler.d.ts +96 -0
- package/dist/analytics/ga4-historical-importer.d.ts +48 -0
- package/dist/analytics/goal-pacing-tracker.d.ts +44 -0
- package/dist/analytics/google-update-impact-analyzer.d.ts +85 -0
- package/dist/analytics/heading-hierarchy-outline-validator.d.ts +47 -0
- package/dist/analytics/heatmap-density-rasterizer.d.ts +57 -0
- package/dist/analytics/holt-winters-forecast-engine.d.ts +61 -0
- package/dist/analytics/hreflang-integrity-engine.d.ts +61 -0
- package/dist/analytics/hreflang-regional-x-default-cascade-resolver.d.ts +29 -0
- package/dist/analytics/hreflang-return-tag-reciprocity-auditor.d.ts +40 -0
- package/dist/analytics/html-doctype-declaration-legacy-syntax-auditor.d.ts +24 -0
- package/dist/analytics/html-entity-encoding-double-escaping-auditor.d.ts +36 -0
- package/dist/analytics/html-lang-directionality-bidi-auditor.d.ts +39 -0
- package/dist/analytics/html-microformat-hcard-hcalendar-auditor.d.ts +34 -0
- package/dist/analytics/html-text-contrast-accessibility-a11y-auditor.d.ts +47 -0
- package/dist/analytics/http-header-security-seo-audit-engine.d.ts +61 -0
- package/dist/analytics/http-strict-transport-security-preload-auditor.d.ts +40 -0
- package/dist/analytics/http2-server-push-deprecation-early-hints-auditor.d.ts +36 -0
- package/dist/analytics/identity-graph-stitching-engine.d.ts +66 -0
- package/dist/analytics/identity-ip-bucket.d.ts +25 -0
- package/dist/analytics/image-format-density-responsive-optimizer.d.ts +46 -0
- package/dist/analytics/in-page-overlay-mapper.d.ts +47 -0
- package/dist/analytics/index.d.ts +35 -0
- package/dist/analytics/indexnow-instant-indexation-submitter.d.ts +46 -0
- package/dist/analytics/indexnow-instant-submission-protocol-auditor.d.ts +33 -0
- package/dist/analytics/infinite-scroll-virtualized-list-seo-auditor.d.ts +41 -0
- package/dist/analytics/internal-link-anchor-nofollow-equity-leak-auditor.d.ts +37 -0
- package/dist/analytics/internal-link-pagerank-auditor.d.ts +62 -0
- package/dist/analytics/internal-search-query-intelligence.d.ts +82 -0
- package/dist/analytics/internal-search-zero-result-spelling-correction-suggester.d.ts +36 -0
- package/dist/analytics/interrupted-time-series-engine.d.ts +64 -0
- package/dist/analytics/intranet-measurable-engine.d.ts +33 -0
- package/dist/analytics/js-hydration-drift-auditor.d.ts +63 -0
- package/dist/analytics/json-ld-local-business-geo-shape-validator.d.ts +55 -0
- package/dist/analytics/keyword-cannibalization-resolver.d.ts +50 -0
- package/dist/analytics/kmeans-persona-discovery-engine.d.ts +57 -0
- package/dist/analytics/lcp-preload-responsive-image-candidate-picker.d.ts +54 -0
- package/dist/analytics/ld-json-graph-nesting-resolver.d.ts +53 -0
- package/dist/analytics/lfa.d.ts +24 -0
- package/dist/analytics/live-funnel-dropoff-alert-engine.d.ts +64 -0
- package/dist/analytics/log-file-search-engine-ip-reverse-dns-verifier.d.ts +35 -0
- package/dist/analytics/logfile-bot-anomaly-detector.d.ts +62 -0
- package/dist/analytics/long-animation-task-tracker.d.ts +45 -0
- package/dist/analytics/long-task-tracker.d.ts +41 -0
- package/dist/analytics/market-basket-association-engine.d.ts +64 -0
- package/dist/analytics/markov-attribution-engine.d.ts +62 -0
- package/dist/analytics/measurement-protocol-validator.d.ts +64 -0
- package/dist/analytics/meta-robots-unavailable-after-header-auditor.d.ts +29 -0
- package/dist/analytics/metric-driver-analyzer.d.ts +41 -0
- package/dist/analytics/metric-formula-engine.d.ts +47 -0
- package/dist/analytics/mixed-content-http-resource-passive-active-auditor.d.ts +39 -0
- package/dist/analytics/mobile-replay-sanitizer.d.ts +37 -0
- package/dist/analytics/mobile-symbolizer.d.ts +57 -0
- package/dist/analytics/monitor.d.ts +11 -0
- package/dist/analytics/movers-and-shakers-detector.d.ts +48 -0
- package/dist/analytics/multi-armed-bandit-allocator.d.ts +59 -0
- package/dist/analytics/multi-attribution-engine.d.ts +23 -0
- package/dist/analytics/multi-domain-hreflang-cluster-graph.d.ts +61 -0
- package/dist/analytics/multi-funnel-engine.d.ts +38 -0
- package/dist/analytics/multi-site-rollup-engine.d.ts +58 -0
- package/dist/analytics/multi-tab-session-sync.d.ts +41 -0
- package/dist/analytics/navigation-menu-depth-click-proximity-auditor.d.ts +41 -0
- package/dist/analytics/navigation-timing-engine.d.ts +64 -0
- package/dist/analytics/network-information-tracker.d.ts +40 -0
- package/dist/analytics/network-sanitizer.d.ts +53 -0
- package/dist/analytics/network-waterfall-analyzer.d.ts +54 -0
- package/dist/analytics/offline-event-reconciler.d.ts +55 -0
- package/dist/analytics/open-graph-social-card-auditor.d.ts +61 -0
- package/dist/analytics/opengraph-twitter-card-image-dimension-auditor.d.ts +43 -0
- package/dist/analytics/orphan-page-rescue-linker.d.ts +66 -0
- package/dist/analytics/page-lifecycle-tracker.d.ts +29 -0
- package/dist/analytics/pagination-infinite-scroll-auditor.d.ts +67 -0
- package/dist/analytics/parameterized-query-engine.d.ts +43 -0
- package/dist/analytics/predictive-lead-scorer.d.ts +73 -0
- package/dist/analytics/privacy-manager-engine.d.ts +34 -0
- package/dist/analytics/product-tour-telemetry.d.ts +59 -0
- package/dist/analytics/proof-of-work-gatekeeper.d.ts +50 -0
- package/dist/analytics/propensity-scorer-ga4.d.ts +58 -0
- package/dist/analytics/proxy-adblock-bypasser.d.ts +36 -0
- package/dist/analytics/pseo-pattern-rollup.d.ts +64 -0
- package/dist/analytics/public-dashboard-manager.d.ts +56 -0
- package/dist/analytics/query-canvas-graph.d.ts +101 -0
- package/dist/analytics/realtime-concurrency-monitor.d.ts +59 -0
- package/dist/analytics/redirect-chain-shortcut-optimizer.d.ts +61 -0
- package/dist/analytics/referrer-spam-detector.d.ts +60 -0
- package/dist/analytics/release-vitals-correlator.d.ts +59 -0
- package/dist/analytics/replay-annotation-engine.d.ts +50 -0
- package/dist/analytics/replay-audio-track-sync.d.ts +64 -0
- package/dist/analytics/replay-timeline-reconstructor.d.ts +71 -0
- package/dist/analytics/resource-hint-speculation-rules-optimizer.d.ts +43 -0
- package/dist/analytics/resource-timing-engine.d.ts +53 -0
- package/dist/analytics/resource-timing-transfer-size-discrepancy-auditor.d.ts +39 -0
- package/dist/analytics/responsive-search-ad-creative-builder.d.ts +71 -0
- package/dist/analytics/retention-curve-fitting-engine.d.ts +53 -0
- package/dist/analytics/retention.d.ts +6 -0
- package/dist/analytics/rfm-segmentation-engine.d.ts +60 -0
- package/dist/analytics/robots-txt-parity-compiler.d.ts +70 -0
- package/dist/analytics/robots-txt-x-robots-tag-header-conflict-auditor.d.ts +38 -0
- package/dist/analytics/rollup-aggregator.d.ts +65 -0
- package/dist/analytics/rss-atom-feed-syndication-discoverability-auditor.d.ts +45 -0
- package/dist/analytics/rss-widget-feed.d.ts +75 -0
- package/dist/analytics/rum.d.ts +12 -0
- package/dist/analytics/scheduled-reports-engine.d.ts +41 -0
- package/dist/analytics/schema-discrepancy-validator.d.ts +79 -0
- package/dist/analytics/schema-graph-auditor.d.ts +59 -0
- package/dist/analytics/schema-org-course-educational-credential-auditor.d.ts +81 -0
- package/dist/analytics/schema-org-recipe-nutritional-information-validator.d.ts +95 -0
- package/dist/analytics/screen-resolution-engine.d.ts +55 -0
- package/dist/analytics/search-engine-bot-ip-range-geo-location-auditor.d.ts +44 -0
- package/dist/analytics/search-engine-organic-cpc-cannibalization-arbitrage-auditor.d.ts +53 -0
- package/dist/analytics/search-engine-sitemap-image-extension-auditor.d.ts +37 -0
- package/dist/analytics/search-engine-sitemap-news-extension-auditor.d.ts +38 -0
- package/dist/analytics/segment-tree-compiler.d.ts +34 -0
- package/dist/analytics/semantic-metric-validator.d.ts +84 -0
- package/dist/analytics/seo-content-thinness-readability-score-synthesizer.d.ts +40 -0
- package/dist/analytics/seo-split-test-engine.d.ts +83 -0
- package/dist/analytics/serp-ai-overview-citation-auditor.d.ts +64 -0
- package/dist/analytics/serp-intent-congruence-auditor.d.ts +54 -0
- package/dist/analytics/serp-rank-cpc-opportunity-matrix.d.ts +50 -0
- package/dist/analytics/serp-rank-distribution-decay-matrix.d.ts +64 -0
- package/dist/analytics/serp-snippet-faq-accordion-eligibility-scorer.d.ts +40 -0
- package/dist/analytics/serp-snippet-opportunity-hunter.d.ts +58 -0
- package/dist/analytics/serp-snippet-pixel-truncation-estimator.d.ts +39 -0
- package/dist/analytics/serp-volatility-sensor.d.ts +56 -0
- package/dist/analytics/server-timing-header-metrics-decomposer.d.ts +26 -0
- package/dist/analytics/session-issue-classifier.d.ts +82 -0
- package/dist/analytics/session-playlist-orchestrator.d.ts +46 -0
- package/dist/analytics/session-replay-live-assist.d.ts +70 -0
- package/dist/analytics/session-replay-privacy-masker.d.ts +36 -0
- package/dist/analytics/session-similarity-matcher.d.ts +39 -0
- package/dist/analytics/sessionizer.d.ts +47 -0
- package/dist/analytics/sessions.d.ts +2 -0
- package/dist/analytics/shapley-attribution-engine.d.ts +55 -0
- package/dist/analytics/site-health-analyzer.d.ts +76 -0
- package/dist/analytics/site-registry-auditor.d.ts +42 -0
- package/dist/analytics/sitemap-health-auditor.d.ts +61 -0
- package/dist/analytics/sites-manager-engine.d.ts +39 -0
- package/dist/analytics/soft-404-thin-content-scorer.d.ts +33 -0
- package/dist/analytics/sourcemap-symbolizer.d.ts +47 -0
- package/dist/analytics/speculation-rules-prerender-candidate-auditor.d.ts +38 -0
- package/dist/analytics/squarified-treemap-engine.d.ts +37 -0
- package/dist/analytics/ssr-streaming-ttfb-flush-auditor.d.ts +45 -0
- package/dist/analytics/standalone-replay-exporter.d.ts +45 -0
- package/dist/analytics/state-mutation-recorder.d.ts +42 -0
- package/dist/analytics/statistical-anomaly-detector.d.ts +66 -0
- package/dist/analytics/stickiness-engine.d.ts +47 -0
- package/dist/analytics/sticky-user-id.d.ts +31 -0
- package/dist/analytics/structured-data-merchant-return-policy-auditor.d.ts +38 -0
- package/dist/analytics/structured-data-rich-results-eligibility-auditor.d.ts +43 -0
- package/dist/analytics/structured-data-validation-aggregate-score-synthesizer.d.ts +43 -0
- package/dist/analytics/subresource-integrity-cdn-tampering-auditor.d.ts +41 -0
- package/dist/analytics/survey-branching-engine.d.ts +45 -0
- package/dist/analytics/survey-sentiment-driver-analyzer.d.ts +62 -0
- package/dist/analytics/tag-trigger-evaluator.d.ts +91 -0
- package/dist/analytics/tasks-timetable-manager.d.ts +62 -0
- package/dist/analytics/text-selection-tracker.d.ts +66 -0
- package/dist/analytics/third-party-script-cpu-execution-profiler.d.ts +50 -0
- package/dist/analytics/third-party-tracker-cname-cloaking-auditor.d.ts +35 -0
- package/dist/analytics/time-series-forecaster.d.ts +81 -0
- package/dist/analytics/timeseries-transform-engine.d.ts +32 -0
- package/dist/analytics/topical-authority-cluster-graph.d.ts +76 -0
- package/dist/analytics/tracker-install-verifier.d.ts +35 -0
- package/dist/analytics/tracking-plan-drift-detector.d.ts +71 -0
- package/dist/analytics/tracking-proxy-config.d.ts +48 -0
- package/dist/analytics/transitions-matrix-calculator.d.ts +66 -0
- package/dist/analytics/types.d.ts +77 -0
- package/dist/analytics/unified.d.ts +56 -0
- package/dist/analytics/user-feedback-engine.d.ts +79 -0
- package/dist/analytics/user-flow-aggregator.d.ts +67 -0
- package/dist/analytics/user-flow-dropoff-sunburst-engine.d.ts +61 -0
- package/dist/analytics/user-journey-sankey-engine.d.ts +79 -0
- package/dist/analytics/user-language-engine.d.ts +48 -0
- package/dist/analytics/user-lifecycle-analyzer.d.ts +46 -0
- package/dist/analytics/utm-inference-engine.d.ts +42 -0
- package/dist/analytics/video-object-schema-key-moments-scorer.d.ts +52 -0
- package/dist/analytics/viewport-meta-mobile-scalability-auditor.d.ts +35 -0
- package/dist/analytics/visit-time-analyzer.d.ts +49 -0
- package/dist/analytics/visit-time-distribution.d.ts +49 -0
- package/dist/analytics/visitor-interest-engine.d.ts +44 -0
- package/dist/analytics/visual-element-heatmap-mapper.d.ts +59 -0
- package/dist/analytics/web-animations-recorder.d.ts +98 -0
- package/dist/analytics/web-vital-cls-attribution-profiler.d.ts +76 -0
- package/dist/analytics/web-vital-inp-attribution-profiler.d.ts +79 -0
- package/dist/analytics/web-vital-interaction-to-next-paint-event-target-decomposer.d.ts +49 -0
- package/dist/analytics/web-vital-lcp-attribution-profiler.d.ts +77 -0
- package/dist/analytics/web-vitals-attribution-engine.d.ts +103 -0
- package/dist/analytics/web-vitals-fcp-speed-index-auditor.d.ts +48 -0
- package/dist/analytics/web-vitals-tbt-loaf-auditor.d.ts +54 -0
- package/dist/analytics/web-worker-offscreen-canvas-performance-auditor.d.ts +37 -0
- package/dist/analytics/webapp-manifest-pwa-installability-auditor.d.ts +41 -0
- package/dist/analytics/webhooks-engine.d.ts +41 -0
- package/dist/analytics/xml-sitemap-index-paginator-splitter.d.ts +44 -0
- package/dist/analytics/xml-sitemap-video-extension-auditor.d.ts +42 -0
- package/dist/analytics-client.d.ts +87 -1
- package/dist/analytics-import.d.ts +49 -0
- package/dist/analytics-plan-generator.d.ts +57 -0
- package/dist/analytics-query-agent.d.ts +21 -0
- package/dist/analytics-tagging-plan.d.ts +130 -0
- package/dist/anti-adblock/stealth-proxy-generator.d.ts +49 -0
- package/dist/api-playground-catalog.d.ts +34 -0
- package/dist/article-autopilot-orchestrator.d.ts +90 -0
- package/dist/attentive-sync-engine.d.ts +25 -0
- package/dist/attribution-model.d.ts +52 -0
- package/dist/audit-log.d.ts +76 -0
- package/dist/audit-scoring-engine.d.ts +48 -0
- package/dist/autonomous-audit-engine.d.ts +104 -0
- package/dist/autonomous-site-assets-generator.d.ts +37 -0
- package/dist/backlinks-client.d.ts +102 -8
- package/dist/backlinks-store.d.ts +115 -0
- package/dist/bandit-optimizer.d.ts +87 -0
- package/dist/bi-enterprise-suite.d.ts +278 -0
- package/dist/boards/rollup.d.ts +19 -0
- package/dist/boards-rollup.d.ts +97 -0
- package/dist/bookmarks-importer.d.ts +29 -0
- package/dist/bulk-seo-orchestrator.d.ts +51 -0
- package/dist/catalogs/ar.json +223 -0
- package/dist/catalogs/de.json +223 -0
- package/dist/catalogs/es.json +223 -0
- package/dist/catalogs/fr.json +398 -0
- package/dist/catalogs/id.json +223 -0
- package/dist/catalogs/it.json +223 -0
- package/dist/catalogs/ja.json +223 -0
- package/dist/catalogs/ko.json +223 -0
- package/dist/catalogs/nl.json +223 -0
- package/dist/catalogs/pl.json +1146 -0
- package/dist/catalogs/pt.json +223 -0
- package/dist/catalogs/ru.json +223 -0
- package/dist/catalogs/sv.json +223 -0
- package/dist/catalogs/tr.json +223 -0
- package/dist/catalogs/vi.json +223 -0
- package/dist/catalogs/zh.json +223 -0
- package/dist/cdp-pipelines.d.ts +44 -0
- package/dist/chart-annotations.d.ts +26 -0
- package/dist/chart-plan/__tests__/chart-types-cases.d.ts +11 -0
- package/dist/chart-plan/__tests__/static-viz-cases.d.ts +11 -0
- package/dist/chart-plan/__tests__/svg-normalize.d.ts +25 -0
- package/dist/chart-plan/dataset.d.ts +25 -0
- package/dist/chart-plan/geometry/bar.d.ts +13 -0
- package/dist/chart-plan/geometry/boxplot.d.ts +70 -0
- package/dist/chart-plan/geometry/cartesian/axes.d.ts +53 -0
- package/dist/chart-plan/geometry/cartesian/layout.d.ts +47 -0
- package/dist/chart-plan/geometry/cartesian/scales.d.ts +46 -0
- package/dist/chart-plan/geometry/cartesian/series.d.ts +33 -0
- package/dist/chart-plan/geometry/choropleth.d.ts +44 -0
- package/dist/chart-plan/geometry/combo.d.ts +34 -0
- package/dist/chart-plan/geometry/funnel.d.ts +60 -0
- package/dist/chart-plan/geometry/gauge-segmented.d.ts +58 -0
- package/dist/chart-plan/geometry/gauge.d.ts +12 -0
- package/dist/chart-plan/geometry/index.d.ts +44 -0
- package/dist/chart-plan/geometry/legend.d.ts +66 -0
- package/dist/chart-plan/geometry/pie.d.ts +28 -0
- package/dist/chart-plan/geometry/progress-bar.d.ts +46 -0
- package/dist/chart-plan/geometry/sankey.d.ts +90 -0
- package/dist/chart-plan/geometry/scatter.d.ts +61 -0
- package/dist/chart-plan/geometry/scorecard.d.ts +11 -0
- package/dist/chart-plan/geometry/sparkline.d.ts +10 -0
- package/dist/chart-plan/geometry/text.d.ts +25 -0
- package/dist/chart-plan/geometry/treemap.d.ts +51 -0
- package/dist/chart-plan/geometry/trend.d.ts +32 -0
- package/dist/chart-plan/geometry/waterfall.d.ts +51 -0
- package/dist/chart-plan/port/color.d.ts +27 -0
- package/dist/chart-plan/port/constants.d.ts +8 -0
- package/dist/chart-plan/port/numbers.d.ts +24 -0
- package/dist/chart-plan/port/text.d.ts +27 -0
- package/dist/chart-plan/renderers/svg.d.ts +11 -0
- package/dist/chart-plan/types.d.ts +134 -0
- package/dist/citation-verifier.d.ts +53 -0
- package/dist/cli.d.ts +89 -0
- package/dist/cli.js +65518 -0
- package/dist/clickhouse/client.d.ts +21 -0
- package/dist/clickhouse/index.d.ts +2 -0
- package/dist/clickhouse/migrate-cli.d.ts +1 -0
- package/dist/clickhouse/migrate.d.ts +6 -0
- package/dist/clickhouse/migrations/001_raw_events.sql +14 -0
- package/dist/clickhouse/migrations/002_analytics.sql +10 -0
- package/dist/clickhouse/migrations/003_crawl.sql +12 -0
- package/dist/clickhouse/migrations/004_rank.sql +11 -0
- package/dist/clickhouse/migrations/005_backlink.sql +12 -0
- package/dist/clickhouse/migrations/006_mv_hourly.sql +11 -0
- package/dist/clickhouse/migrations/007_pulse_mv_hourly.sql +26 -0
- package/dist/clickhouse/migrations/008_pulse_events_codec.sql +34 -0
- package/dist/clickhouse-functions.d.ts +141 -0
- package/dist/cluster-generator.d.ts +103 -0
- package/dist/cms-publication-client.d.ts +108 -0
- package/dist/competitor-backlink-import.d.ts +54 -0
- package/dist/competitor-insights.d.ts +35 -0
- package/dist/competitor-pages-generator.d.ts +60 -0
- package/dist/content-ai-arsenal.d.ts +1 -1
- package/dist/content-freshness.d.ts +48 -0
- package/dist/content-humanizer.d.ts +46 -0
- package/dist/content-prune-matrix.d.ts +49 -0
- package/dist/content-repurposer.d.ts +90 -0
- package/dist/content-writer.d.ts +43 -0
- package/dist/contextual-auto-linker.d.ts +39 -0
- package/dist/contextual-internal-linker.d.ts +48 -0
- package/dist/conversion-funnel-calculator.d.ts +37 -0
- package/dist/conversion-tracking-generator.d.ts +61 -0
- package/dist/conversions-api.d.ts +136 -0
- package/dist/copy-frameworks-master.d.ts +2 -2
- package/dist/crawl-api-enricher.d.ts +110 -0
- package/dist/crawl-config-profile.d.ts +55 -0
- package/dist/crawl-diff-engine.d.ts +69 -0
- package/dist/crawler/native-crawler.d.ts +179 -0
- package/dist/crawler/native-parser.d.ts +68 -0
- package/dist/crawler-retry-policy.d.ts +18 -0
- package/dist/cro-bayesian-calculator.d.ts +74 -0
- package/dist/cro-copywriting-engine.d.ts +2 -2
- package/dist/cro-heuristic-auditor.d.ts +44 -0
- package/dist/cro-industry-benchmarks.d.ts +76 -0
- package/dist/cro-revenue-attribution-engine.d.ts +53 -0
- package/dist/cro-variant-ai-engine.d.ts +37 -0
- package/dist/cross-filter.d.ts +82 -0
- package/dist/crosslink-scorer.d.ts +1 -1
- package/dist/custom-dimensions.d.ts +58 -0
- package/dist/data-lifecycle-manager.d.ts +121 -0
- package/dist/dataforseo-ai-tracking-client.d.ts +182 -0
- package/dist/dataforseo-business-client.d.ts +191 -0
- package/dist/dataforseo-cost-model.d.ts +126 -0
- package/dist/dataforseo-google-ads-client.d.ts +107 -0
- package/dist/dataforseo-labs-client.d.ts +296 -0
- package/dist/dataforseo-llm-mentions-client.d.ts +213 -0
- package/dist/dataforseo-transport.d.ts +156 -0
- package/dist/dataset-matrix-architect.d.ts +125 -0
- package/dist/datasets/index.d.ts +1 -0
- package/dist/datasets/inferColumnTypes.d.ts +32 -0
- package/dist/deep-crawl-importer.d.ts +120 -0
- package/dist/deep-crawler-auditor.d.ts +185 -0
- package/dist/deep-data-audit.d.ts +134 -0
- package/dist/destinations/destination-circuit-breaker.d.ts +63 -0
- package/dist/destinations/destination-erasure-cascade.d.ts +66 -0
- package/dist/destinations/destination-router.d.ts +45 -0
- package/dist/destinations/object-storage.d.ts +43 -0
- package/dist/destinations/warehouse-schema-generator.d.ts +61 -0
- package/dist/device-detection.d.ts +50 -0
- package/dist/documents-transforms.d.ts +41 -0
- package/dist/domain-heritage-checker.d.ts +41 -0
- package/dist/domain-telemetry.d.ts +101 -0
- package/dist/dragonfly-client.d.ts +221 -0
- package/dist/drill-down.d.ts +41 -0
- package/dist/dynamic-seo-mcp-tools.d.ts +155 -0
- package/dist/ecommerce-offer-ladder.d.ts +43 -0
- package/dist/embed-facade-generator.d.ts +64 -0
- package/dist/embeddable-seo-widget.d.ts +1 -1
- package/dist/engine-compat.d.ts +80 -0
- package/dist/engine.d.ts +4 -0
- package/dist/error-tracking.d.ts +20 -0
- package/dist/event-taxonomy.d.ts +39 -0
- package/dist/executive-report-generator.d.ts +59 -0
- package/dist/experiment-assignment.d.ts +34 -0
- package/dist/experiment-framework.d.ts +85 -0
- package/dist/expired-domain-valuator.d.ts +44 -0
- package/dist/exporters/branded-analytics-report.d.ts +90 -0
- package/dist/exporters/excel-action-tracker.d.ts +32 -0
- package/dist/exporters/html-pdf-report.d.ts +35 -0
- package/dist/exporters/markdown-report.d.ts +13 -0
- package/dist/extended-schemas.d.ts +92 -2
- package/dist/flag-decision.d.ts +72 -0
- package/dist/flag-dependency.d.ts +40 -0
- package/dist/flag-override.d.ts +52 -0
- package/dist/flag-release-schedule.d.ts +34 -0
- package/dist/flow-framework-engine.d.ts +25 -0
- package/dist/free-public-tools.d.ts +1 -1
- package/dist/funnel-builder.d.ts +114 -0
- package/dist/g17-live-metrics.d.ts +37 -0
- package/dist/g18-attribution-advanced.d.ts +18 -0
- package/dist/g19-heatmap-rum.d.ts +14 -0
- package/dist/g20-public-status-advanced.d.ts +19 -0
- package/dist/g21-audit-trail.d.ts +35 -0
- package/dist/g22-segment-builder.d.ts +23 -0
- package/dist/g23-funnel-builder.d.ts +37 -0
- package/dist/g24-advanced-sql-engine.d.ts +46 -0
- package/dist/g25-edge-latency.d.ts +2 -0
- package/dist/g26-turnstile-advanced.d.ts +18 -0
- package/dist/g27-third-party-profiles.d.ts +9 -0
- package/dist/g28-live-metrics-advanced.d.ts +25 -0
- package/dist/g29-segment-analysis.d.ts +20 -0
- package/dist/g30-geo-embedding.d.ts +27 -0
- package/dist/g31-identity-resolver.d.ts +27 -0
- package/dist/ga4-gsc-mcp-tools.d.ts +187 -0
- package/dist/gamified-cro-engine.d.ts +62 -0
- package/dist/gbp-client.d.ts +203 -0
- package/dist/geo-badge-generator.d.ts +27 -0
- package/dist/geo-cdn-waf-auditor.d.ts +37 -0
- package/dist/geo-ci-formatter.d.ts +50 -0
- package/dist/geo-citability-scorer.d.ts +77 -0
- package/dist/geo-competitive-narrative.d.ts +76 -0
- package/dist/geo-content-decay.d.ts +27 -0
- package/dist/geo-context-window.d.ts +30 -0
- package/dist/geo-diff-engine.d.ts +60 -0
- package/dist/geo-factual-accuracy-auditor.d.ts +40 -0
- package/dist/geo-fixer.d.ts +36 -0
- package/dist/geo-grid-rank-tracker.d.ts +54 -0
- package/dist/geo-hallucination-bait.d.ts +30 -0
- package/dist/geo-instruction-auditor.d.ts +37 -0
- package/dist/geo-js-auditor.d.ts +25 -0
- package/dist/geo-multi-turn-persistence.d.ts +55 -0
- package/dist/geo-multimodal-auditor.d.ts +33 -0
- package/dist/geo-negative-signals.d.ts +49 -0
- package/dist/geo-page-intent-mapper.d.ts +46 -0
- package/dist/geo-perception-extractor.d.ts +50 -0
- package/dist/geo-platform-auditor.d.ts +82 -0
- package/dist/geo-prompt-injection-detector.d.ts +25 -0
- package/dist/geo-score-calculator.d.ts +214 -0
- package/dist/geo-semantic-coherence.d.ts +36 -0
- package/dist/geo-semantic-drift-detector.d.ts +34 -0
- package/dist/geo-site-scaffolding.d.ts +71 -0
- package/dist/geo-topical-authority-cluster.d.ts +44 -0
- package/dist/geo-topical-authority.d.ts +42 -0
- package/dist/geo-trust-stack.d.ts +45 -0
- package/dist/geo-webmcp-auditor.d.ts +33 -0
- package/dist/geoip.d.ts +61 -0
- package/dist/google-ai-readiness-auditor.d.ts +77 -0
- package/dist/google-policy-sentinel.d.ts +68 -0
- package/dist/gorgias-sync-engine.d.ts +47 -0
- package/dist/governance/schema-discovery.d.ts +37 -0
- package/dist/governance/tracking-plan.d.ts +79 -0
- package/dist/gsc-auto-sync-scheduler.d.ts +80 -0
- package/dist/gsc-disavow-export-engine.d.ts +45 -0
- package/dist/headings-outline-engine.d.ts +37 -0
- package/dist/heatmap-rum.d.ts +67 -0
- package/dist/html-diff-engine.d.ts +44 -0
- package/dist/html-snapshot-replay.d.ts +47 -0
- package/dist/humanity-ai-scrubber.d.ts +77 -3
- package/dist/i18n/index.d.ts +1 -0
- package/dist/i18n/translator.d.ts +71 -0
- package/dist/identity-resolver.d.ts +162 -0
- package/dist/image-cwv-auditor.d.ts +59 -0
- package/dist/image-geo-exif-enricher.d.ts +68 -0
- package/dist/impact-analysis.d.ts +85 -0
- package/dist/index.d.ts +782 -7
- package/dist/index.js +217403 -10597
- package/dist/index.mjs +217403 -10597
- package/dist/indexnow-client.d.ts +33 -1
- package/dist/information-gain-scorer.d.ts +36 -0
- package/dist/instant-matrix-search.d.ts +1 -1
- package/dist/integrations/cloudflare-browser-renderer.d.ts +100 -0
- package/dist/integrations/dataforseo-audit-client.d.ts +152 -0
- package/dist/integrations/linkwarden-connector.d.ts +72 -0
- package/dist/integrations/pagespeed-client.d.ts +61 -0
- package/dist/internal-link-graph-engine.d.ts +120 -0
- package/dist/international-seo-auditor.d.ts +91 -0
- package/dist/inventory-scarcity-engine.d.ts +30 -0
- package/dist/iptc-media-validator.d.ts +30 -0
- package/dist/isr-cache-manager.d.ts +4 -2
- package/dist/jev-qualifier.d.ts +129 -0
- package/dist/jobs/retry-queue.d.ts +19 -0
- package/dist/kafka-producer.d.ts +48 -0
- package/dist/keyword-advanced-catalog.d.ts +59 -0
- package/dist/keyword-analytics-engine.d.ts +119 -0
- package/dist/keyword-bundle-orchestrator.d.ts +44 -0
- package/dist/keyword-cost-estimator.d.ts +45 -0
- package/dist/keyword-export-engine.d.ts +52 -0
- package/dist/keyword-market-validator.d.ts +35 -0
- package/dist/keyword-merger.d.ts +81 -0
- package/dist/keyword-permutator.d.ts +0 -1
- package/dist/keyword-session-manager.d.ts +84 -0
- package/dist/keyword-trend-sparkline.d.ts +55 -0
- package/dist/keywords/cannibalization.d.ts +15 -0
- package/dist/klaviyo-sync-engine.d.ts +75 -0
- package/dist/knowledge-graph-linker.d.ts +31 -1
- package/dist/kvi-opportunity-calculator.d.ts +61 -0
- package/dist/lago-token-meter.d.ts +4 -0
- package/dist/lcp-subparts-analyzer.d.ts +56 -0
- package/dist/links/backlinks-gap.d.ts +31 -0
- package/dist/links/competitors-import.d.ts +17 -0
- package/dist/links/opportunities.d.ts +20 -0
- package/dist/links-matrix-exporter.d.ts +31 -0
- package/dist/live-ai-citation-tester.d.ts +95 -0
- package/dist/live-co-browsing.d.ts +135 -0
- package/dist/live-metrics-advanced.d.ts +60 -0
- package/dist/llm-content-cleaner.d.ts +28 -1
- package/dist/llms-txt-generator.d.ts +42 -0
- package/dist/local-geogrid-simulator.d.ts +48 -0
- package/dist/local-seo-importer.d.ts +143 -0
- package/dist/local-seo-review-intelligence.d.ts +62 -0
- package/dist/longform-article-planner.d.ts +37 -0
- package/dist/lql/compiler.d.ts +2 -0
- package/dist/lql/index.d.ts +4 -0
- package/dist/lql/streaming.d.ts +8 -0
- package/dist/lql/types.d.ts +54 -0
- package/dist/lql/validator.d.ts +2 -0
- package/dist/lylql/compiler.d.ts +2 -0
- package/dist/lylql/index.d.ts +27 -0
- package/dist/lylql/lql-types.d.ts +43 -0
- package/dist/lylql/streaming.d.ts +1 -0
- package/dist/lylql/types.d.ts +3 -0
- package/dist/lylql/validator.d.ts +4 -0
- package/dist/lynx-agent-readiness-auditor.d.ts +89 -0
- package/dist/lynx-pulse-prism-engine.d.ts +70 -0
- package/dist/mailchimp-sync-engine.d.ts +50 -0
- package/dist/marketing-council-engine.d.ts +94 -0
- package/dist/marketing-skills-engine.d.ts +56 -1
- package/dist/marketplace-price-intelligence.d.ts +75 -0
- package/dist/master-audit-orchestrator.d.ts +118 -0
- package/dist/master-marketing-engine.d.ts +1 -1
- package/dist/matrix-engine.d.ts +87 -2
- package/dist/mbql/compiler.d.ts +2 -0
- package/dist/mbql/index.d.ts +4 -0
- package/dist/mbql/streaming.d.ts +8 -0
- package/dist/mbql/types.d.ts +54 -0
- package/dist/mbql/validator.d.ts +2 -0
- package/dist/mcp-seo-server.d.ts +11 -1
- package/dist/mcp-seo-server.js +100293 -0
- package/dist/meta-ad-library-intelligence.d.ts +91 -0
- package/dist/metric-glossary.d.ts +48 -0
- package/dist/mobile-event-queue.d.ts +68 -0
- package/dist/monolith-inliner.d.ts +20 -0
- package/dist/multi-source-attribution.d.ts +59 -0
- package/dist/multi-touch-attribution.d.ts +50 -0
- package/dist/nango-integration.d.ts +99 -0
- package/dist/nap-consistency-checker.d.ts +60 -0
- package/dist/narrative-validator.d.ts +38 -0
- package/dist/near-duplicate-detector.d.ts +84 -0
- package/dist/network-intelligence.d.ts +37 -0
- package/dist/ngram-density-analyzer.d.ts +1 -1
- package/dist/nl-to-sql-engine.d.ts +99 -0
- package/dist/omnisend-sync-engine.d.ts +31 -0
- package/dist/openreplay-adapted/clickmap-adapted.d.ts +17 -0
- package/dist/openreplay-adapted/console-adapted.d.ts +13 -0
- package/dist/openreplay-adapted/exception-adapted.d.ts +18 -0
- package/dist/openreplay-adapted/feature-flags-adapted.d.ts +20 -0
- package/dist/openreplay-adapted/input-adapted.d.ts +16 -0
- package/dist/openreplay-adapted/integrations-adapted.d.ts +29 -0
- package/dist/openreplay-adapted/mouse-adapted.d.ts +19 -0
- package/dist/openreplay-adapted/network-adapted.d.ts +28 -0
- package/dist/openreplay-adapted/performance-adapted.d.ts +16 -0
- package/dist/openreplay-adapted/sourcemap-uploader-adapted.d.ts +22 -0
- package/dist/openreplay-adapted/sourcemapreader-adapted.d.ts +22 -0
- package/dist/openreplay-adapted/state-adapted.d.ts +20 -0
- package/dist/openserp-client.d.ts +48 -0
- package/dist/page-delivery-auditor.d.ts +31 -0
- package/dist/page-snapshotter.d.ts +41 -0
- package/dist/parasite-seo-detector.d.ts +59 -0
- package/dist/period-compare.d.ts +34 -0
- package/dist/persistent-page-store.d.ts +129 -0
- package/dist/pipeline/dlq-manager.d.ts +99 -0
- package/dist/pipeline/event-deduplication.d.ts +59 -0
- package/dist/pipeline/event-replay.d.ts +40 -0
- package/dist/pipeline/event-sampler.d.ts +37 -0
- package/dist/pipeline/event-transform-pipeline.d.ts +89 -0
- package/dist/pipeline/event-watermark-reorderer.d.ts +50 -0
- package/dist/pipeline/payload-compressor.d.ts +20 -0
- package/dist/plugin/custom-dimensions-plugin.d.ts +24 -0
- package/dist/plugin/device-detection-plugin.d.ts +23 -0
- package/dist/plugin/event-bus.d.ts +47 -0
- package/dist/plugin/geoip-plugin.d.ts +25 -0
- package/dist/plugin/heatmap-plugin.d.ts +23 -0
- package/dist/plugin/index.d.ts +6 -0
- package/dist/plugin/manager.d.ts +27 -0
- package/dist/plugin/rum-plugin.d.ts +25 -0
- package/dist/plugin/types.d.ts +33 -0
- package/dist/plugin/user-id-plugin.d.ts +25 -0
- package/dist/plugins/account-analytics/index.d.ts +39 -0
- package/dist/plugins/actions/index.d.ts +68 -0
- package/dist/plugins/activity-log/index.d.ts +58 -0
- package/dist/plugins/ai-agents/index.d.ts +75 -0
- package/dist/plugins/analytics-notebooks/index.d.ts +86 -0
- package/dist/plugins/annotations/index.d.ts +46 -0
- package/dist/plugins/anonymous-tracking/index.d.ts +41 -0
- package/dist/plugins/approvals/index.d.ts +96 -0
- package/dist/plugins/archiving-metrics/index.d.ts +98 -0
- package/dist/plugins/assist-cobrowse/index.d.ts +60 -0
- package/dist/plugins/automated-workflows/index.d.ts +63 -0
- package/dist/plugins/bandwidth/index.d.ts +53 -0
- package/dist/plugins/batch-exports/index.d.ts +95 -0
- package/dist/plugins/bot-tracking/index.d.ts +68 -0
- package/dist/plugins/bulk-tracking/index.d.ts +48 -0
- package/dist/plugins/clips-highlights/index.d.ts +75 -0
- package/dist/plugins/cohort-retention/index.d.ts +43 -0
- package/dist/plugins/consent-analytics/consent-analytics.d.ts +64 -0
- package/dist/plugins/consent-analytics/index.d.ts +1 -0
- package/dist/plugins/content-treemap/index.d.ts +52 -0
- package/dist/plugins/contents/index.d.ts +42 -0
- package/dist/plugins/correlation-analysis/index.d.ts +43 -0
- package/dist/plugins/custom-alerts/index.d.ts +22 -0
- package/dist/plugins/custom-dimensions/index.d.ts +38 -0
- package/dist/plugins/custom-js-tracker/index.d.ts +49 -0
- package/dist/plugins/custom-variables/index.d.ts +57 -0
- package/dist/plugins/dashboard-presets/dashboard-presets.d.ts +51 -0
- package/dist/plugins/dashboard-presets/index.d.ts +1 -0
- package/dist/plugins/dashboard-widgets/index.d.ts +55 -0
- package/dist/plugins/data-quality/index.d.ts +57 -0
- package/dist/plugins/data-warehouse/index.d.ts +100 -0
- package/dist/plugins/db-stats/index.d.ts +75 -0
- package/dist/plugins/device-plugins/index.d.ts +73 -0
- package/dist/plugins/devices-detection/index.d.ts +39 -0
- package/dist/plugins/early-access-features/index.d.ts +51 -0
- package/dist/plugins/ecommerce/index.d.ts +52 -0
- package/dist/plugins/error-tracking/index.d.ts +101 -0
- package/dist/plugins/event-simulator/index.d.ts +53 -0
- package/dist/plugins/event-usage-budgets/index.d.ts +60 -0
- package/dist/plugins/events/index.d.ts +72 -0
- package/dist/plugins/experiments/index.d.ts +87 -0
- package/dist/plugins/feedback/index.d.ts +47 -0
- package/dist/plugins/form-analytics/index.d.ts +53 -0
- package/dist/plugins/geoip/index.d.ts +50 -0
- package/dist/plugins/geoip-updater/index.d.ts +97 -0
- package/dist/plugins/goals/index.d.ts +85 -0
- package/dist/plugins/group-analytics/index.d.ts +65 -0
- package/dist/plugins/heartbeat/index.d.ts +50 -0
- package/dist/plugins/heatmap-scrollmap/index.d.ts +63 -0
- package/dist/plugins/hog-functions/index.d.ts +88 -0
- package/dist/plugins/ingestion-warnings/index.d.ts +80 -0
- package/dist/plugins/insights/index.d.ts +47 -0
- package/dist/plugins/intranet-measurable/index.d.ts +36 -0
- package/dist/plugins/js-tracker-install-check/index.d.ts +62 -0
- package/dist/plugins/language-distribution/index.d.ts +46 -0
- package/dist/plugins/leads/index.d.ts +118 -0
- package/dist/plugins/live/index.d.ts +71 -0
- package/dist/plugins/live-debugger/index.d.ts +100 -0
- package/dist/plugins/live-detailed/index.d.ts +44 -0
- package/dist/plugins/llm-observability/index.d.ts +91 -0
- package/dist/plugins/log-viewer/index.d.ts +59 -0
- package/dist/plugins/marketing-campaigns/index.d.ts +63 -0
- package/dist/plugins/media-analytics/index.d.ts +60 -0
- package/dist/plugins/mobile-app-measurable/index.d.ts +80 -0
- package/dist/plugins/mobile-messaging/index.d.ts +84 -0
- package/dist/plugins/multi-sites/index.d.ts +45 -0
- package/dist/plugins/overlay/index.d.ts +48 -0
- package/dist/plugins/page-performance/index.d.ts +30 -0
- package/dist/plugins/privacy-manager/index.d.ts +108 -0
- package/dist/plugins/product-tours/index.d.ts +58 -0
- package/dist/plugins/provider/index.d.ts +53 -0
- package/dist/plugins/query-cost-profiler/index.d.ts +1 -0
- package/dist/plugins/query-cost-profiler/query-cost-profiler.d.ts +67 -0
- package/dist/plugins/queued-tracking/index.d.ts +57 -0
- package/dist/plugins/real-time-usage/index.d.ts +67 -0
- package/dist/plugins/referrer-brand-enricher/index.d.ts +1 -0
- package/dist/plugins/referrer-brand-enricher/referrer-brand-enricher.d.ts +59 -0
- package/dist/plugins/referrers/index.d.ts +14 -0
- package/dist/plugins/referrers-complet/index.d.ts +52 -0
- package/dist/plugins/registry.d.ts +112 -0
- package/dist/plugins/replay/index.d.ts +64 -0
- package/dist/plugins/replay-vision/index.d.ts +45 -0
- package/dist/plugins/resolution/index.d.ts +49 -0
- package/dist/plugins/resource-transfer/index.d.ts +95 -0
- package/dist/plugins/revenue-analytics/index.d.ts +73 -0
- package/dist/plugins/scheduled-reports/index.d.ts +71 -0
- package/dist/plugins/security-info/index.d.ts +58 -0
- package/dist/plugins/segment-editor/index.d.ts +73 -0
- package/dist/plugins/site-search/index.d.ts +55 -0
- package/dist/plugins/smart-alerts-anomaly/index.d.ts +61 -0
- package/dist/plugins/sql-cohort/index.d.ts +73 -0
- package/dist/plugins/surveys/index.d.ts +97 -0
- package/dist/plugins/system-diagnostics/index.d.ts +65 -0
- package/dist/plugins/tag-manager/container.d.ts +98 -0
- package/dist/plugins/tag-manager/evaluate.d.ts +63 -0
- package/dist/plugins/tag-manager/export.d.ts +62 -0
- package/dist/plugins/tag-manager/index.d.ts +104 -0
- package/dist/plugins/tag-manager/runtime.d.ts +75 -0
- package/dist/plugins/tag-manager/templates.d.ts +87 -0
- package/dist/plugins/tasks-timetable/index.d.ts +46 -0
- package/dist/plugins/taxonomy-dictionary/index.d.ts +60 -0
- package/dist/plugins/theme/index.d.ts +83 -0
- package/dist/plugins/tracking-spam-prevention/index.d.ts +29 -0
- package/dist/plugins/traffic-shield/index.d.ts +1 -0
- package/dist/plugins/traffic-shield/traffic-shield.d.ts +64 -0
- package/dist/plugins/transitions/index.d.ts +69 -0
- package/dist/plugins/two-factor-auth/index.d.ts +59 -0
- package/dist/plugins/user-country-map/index.d.ts +49 -0
- package/dist/plugins/user-id/index.d.ts +32 -0
- package/dist/plugins/user-language/index.d.ts +13 -0
- package/dist/plugins/user-paths/index.d.ts +60 -0
- package/dist/plugins/users-manager/index.d.ts +69 -0
- package/dist/plugins/visit-frequency/index.d.ts +49 -0
- package/dist/plugins/visit-time/index.d.ts +50 -0
- package/dist/plugins/visitor-interest/index.d.ts +77 -0
- package/dist/plugins/visits-summary/index.d.ts +64 -0
- package/dist/plugins/weekly-traffic/index.d.ts +1 -0
- package/dist/plugins/weekly-traffic/weekly-traffic.d.ts +75 -0
- package/dist/plugins/widgetize/index.d.ts +55 -0
- package/dist/postscript-sync-engine.d.ts +35 -0
- package/dist/privacy/network-replay-sanitizer.d.ts +42 -0
- package/dist/privacy/privacy-sanitizer.d.ts +51 -0
- package/dist/privacy-tracker-generator.d.ts +81 -0
- package/dist/privacy-visitor-hasher.d.ts +62 -0
- package/dist/product-analytics.d.ts +51 -0
- package/dist/product-health-analyzer.d.ts +86 -0
- package/dist/product-usage-analytics.d.ts +46 -0
- package/dist/profiles/behavioral-cohort.d.ts +59 -0
- package/dist/profiles/customer-360.d.ts +39 -0
- package/dist/providers/firecrawl-provider.d.ts +30 -0
- package/dist/providers/firecrawl.d.ts +33 -0
- package/dist/providers/profound-provider.d.ts +28 -0
- package/dist/providers/profound.d.ts +30 -0
- package/dist/providers/search-provider.d.ts +9 -0
- package/dist/providers/seranking-provider.d.ts +29 -0
- package/dist/providers/seranking.d.ts +32 -0
- package/dist/pseo-cli.d.ts +9 -0
- package/dist/pseo-feasibility-scorer.d.ts +44 -0
- package/dist/pseo-geo-citability-booster.d.ts +75 -0
- package/dist/pseo-preflight-gate.d.ts +73 -0
- package/dist/pseo-publisher-bridge.d.ts +59 -0
- package/dist/pseo-quality-circuit-breaker.d.ts +60 -0
- package/dist/public-page-interactive.d.ts +77 -0
- package/dist/public-status-pages.d.ts +61 -0
- package/dist/pulse-remote-config.d.ts +36 -0
- package/dist/pulse-shield-engine.d.ts +76 -0
- package/dist/pulse-telemetry.d.ts +77 -0
- package/dist/rank-math-parity.d.ts +2 -2
- package/dist/rbac-granular.d.ts +47 -0
- package/dist/reader-cleaner.d.ts +40 -0
- package/dist/real-user-monitoring.d.ts +93 -0
- package/dist/real-volume-indexability-gate.d.ts +37 -0
- package/dist/realtime-visitors.d.ts +87 -0
- package/dist/regex-redirect-engine.d.ts +75 -0
- package/dist/report-builder.d.ts +79 -0
- package/dist/resource-hub-generator.d.ts +44 -0
- package/dist/reverse-etl/audience-sync.d.ts +76 -0
- package/dist/rich-results-validator.d.ts +54 -0
- package/dist/rivo-sync-engine.d.ts +33 -0
- package/dist/robots-policy.d.ts +54 -0
- package/dist/robots-txt-simulator.d.ts +94 -0
- package/dist/robots-unified.d.ts +132 -0
- package/dist/row-column-ls.d.ts +64 -0
- package/dist/rss-syndication-feed.d.ts +1 -1
- package/dist/rules/checks-runner.d.ts +17 -0
- package/dist/rules/search-central-catalog.d.ts +43 -0
- package/dist/rum-metrics.d.ts +20 -0
- package/dist/saved-segments.d.ts +38 -0
- package/dist/scheduled-reports.d.ts +42 -0
- package/dist/schema-builder.d.ts +14 -0
- package/dist/screaming-frog-importer.d.ts +109 -0
- package/dist/sdk/lynx-mobile-replay.d.ts +129 -0
- package/dist/sdk/lynx-mobile-sdk.d.ts +152 -0
- package/dist/sdk/lynx-node-sdk.d.ts +138 -0
- package/dist/sdk/react-native/lynx-react-native.d.ts +88 -0
- package/dist/sea-seo-bridge-engine.d.ts +121 -0
- package/dist/selfhost-extensions.d.ts +57 -0
- package/dist/semantic/agent-schema.d.ts +322 -0
- package/dist/semantic/cache.d.ts +91 -0
- package/dist/semantic/catalog/seo-models.d.ts +2 -0
- package/dist/semantic/catalog/seo-models.fixtures.d.ts +17 -0
- package/dist/semantic/chart-suggestion.d.ts +23 -0
- package/dist/semantic/compiler.d.ts +69 -0
- package/dist/semantic/diagnostics.d.ts +62 -0
- package/dist/semantic/dialects/bigquery.d.ts +2 -0
- package/dist/semantic/dialects/clickhouse.d.ts +2 -0
- package/dist/semantic/dialects/features.d.ts +10 -0
- package/dist/semantic/dialects/index.d.ts +10 -0
- package/dist/semantic/dialects/postgres.d.ts +2 -0
- package/dist/semantic/dialects/redshift.d.ts +2 -0
- package/dist/semantic/dialects/registry.d.ts +31 -0
- package/dist/semantic/dialects/snowflake.d.ts +2 -0
- package/dist/semantic/dialects/sqlite.d.ts +2 -0
- package/dist/semantic/dialects/types.d.ts +118 -0
- package/dist/semantic/eval-memory.d.ts +41 -0
- package/dist/semantic/expr-json.d.ts +6 -0
- package/dist/semantic/expr.d.ts +59 -0
- package/dist/semantic/filters/coerce.d.ts +54 -0
- package/dist/semantic/filters/evaluate.d.ts +27 -0
- package/dist/semantic/filters/operators.d.ts +55 -0
- package/dist/semantic/filters/types.d.ts +79 -0
- package/dist/semantic/hogql-transpiler.d.ts +49 -0
- package/dist/semantic/metadata.d.ts +139 -0
- package/dist/semantic/parameters/filter-parameter.d.ts +19 -0
- package/dist/semantic/parameters/json.d.ts +11 -0
- package/dist/semantic/parameters/resolve.d.ts +26 -0
- package/dist/semantic/parameters/types.d.ts +23 -0
- package/dist/semantic/parameters/values.d.ts +60 -0
- package/dist/semantic/periods/period-filter.d.ts +32 -0
- package/dist/semantic/periods/relative.d.ts +86 -0
- package/dist/semantic/pipeline.d.ts +197 -0
- package/dist/semantic/pivot-powerset.d.ts +31 -0
- package/dist/semantic/pivot.d.ts +58 -0
- package/dist/semantic/primitives.d.ts +23 -0
- package/dist/semantic/question.d.ts +71 -0
- package/dist/semantic/registry.d.ts +31 -0
- package/dist/semantic/sandbox.d.ts +132 -0
- package/dist/semantic/schema-registry.d.ts +65 -0
- package/dist/semantic/schema-validator.d.ts +16 -0
- package/dist/semantic/schemas/expr.schemas.d.ts +1 -0
- package/dist/semantic/schemas/index.d.ts +4 -0
- package/dist/semantic/schemas/pipeline.schemas.d.ts +1 -0
- package/dist/semantic/schemas/query.schemas.d.ts +1 -0
- package/dist/semantic/schemas/semantic-query.schemas.d.ts +1 -0
- package/dist/semantic/serialization.d.ts +356 -0
- package/dist/semantic/sql-ast-builder.d.ts +45 -0
- package/dist/semantic/sql-ast.d.ts +155 -0
- package/dist/semantic/sql-formatter.d.ts +12 -0
- package/dist/semantic/sql-guard.d.ts +28 -0
- package/dist/semantic/sql-lex.d.ts +31 -0
- package/dist/semantic/sql-snippets.d.ts +39 -0
- package/dist/semantic/streaming.d.ts +54 -0
- package/dist/semantic/timezone.d.ts +24 -0
- package/dist/semantic/transforms/dag.d.ts +43 -0
- package/dist/semantic/types.d.ts +199 -0
- package/dist/semantic/vocabulary.d.ts +10 -0
- package/dist/semantic-auditor.d.ts +51 -0
- package/dist/sendlane-sync-engine.d.ts +32 -0
- package/dist/seo-chart-spec.d.ts +63 -0
- package/dist/seo-diagram-generator.d.ts +86 -0
- package/dist/seo-drift-comparator.d.ts +82 -0
- package/dist/seo-metric-registry.d.ts +86 -0
- package/dist/seo-opportunities-decay.d.ts +1 -1
- package/dist/seo-opportunity-prioritizer.d.ts +53 -15
- package/dist/seo-quadrant-analyzer.d.ts +133 -0
- package/dist/seo-query-builder.d.ts +70 -0
- package/dist/seo-spelling-grammar-auditor.d.ts +42 -0
- package/dist/serp/serp-features.d.ts +10 -0
- package/dist/serp/serp-history.d.ts +21 -0
- package/dist/serp-alert-dispatcher.d.ts +119 -0
- package/dist/serp-client.d.ts +193 -21
- package/dist/serp-features-scorer.d.ts +43 -0
- package/dist/serp-retry-queue.d.ts +50 -0
- package/dist/server-log-parser.d.ts +56 -0
- package/dist/session-replay-adapted.d.ts +27 -0
- package/dist/session-replay-recorder.d.ts +53 -0
- package/dist/shopify-autopilot-bridge.d.ts +69 -0
- package/dist/shopify-discount-engine.d.ts +51 -0
- package/dist/shopify-seo-connector.d.ts +80 -0
- package/dist/short-links.d.ts +59 -0
- package/dist/shortlinks/shortlinks.d.ts +14 -0
- package/dist/site-crawler.d.ts +221 -11
- package/dist/sitemap-chunk-partitioner.d.ts +62 -0
- package/dist/slug-engine.d.ts +6 -0
- package/dist/sms-compliance-engine.d.ts +47 -0
- package/dist/social-ad-creative-intelligence.d.ts +65 -0
- package/dist/social-article-carousel-generator.d.ts +63 -0
- package/dist/social-community-insights.d.ts +30 -2
- package/dist/social-growth-suite.d.ts +12 -2
- package/dist/social-serp-preview-simulator.d.ts +87 -0
- package/dist/spintax-permutator.d.ts +47 -0
- package/dist/sql-engine-advanced.d.ts +476 -0
- package/dist/sql-query-builder.d.ts +23 -0
- package/dist/static-viz-renderer.d.ts +30 -0
- package/dist/strategic-roadmap-generator.d.ts +34 -0
- package/dist/supercocon-hierarchy-architect.d.ts +73 -0
- package/dist/survey-builder.d.ts +59 -0
- package/dist/sxo-experience-optimizer.d.ts +51 -0
- package/dist/technical-rules-auditor.d.ts +37 -6
- package/dist/telemetry-doctor.d.ts +97 -0
- package/dist/timelines/projection.d.ts +69 -0
- package/dist/timelines/visibility.d.ts +80 -0
- package/dist/tools/log-analytics-importer.d.ts +82 -0
- package/dist/tracker-adapted/clickmap-adapted.d.ts +33 -0
- package/dist/tracker-adapted/cohort-builder-adapted.d.ts +25 -0
- package/dist/tracker-adapted/console-adapted.d.ts +10 -0
- package/dist/tracker-adapted/exception-adapted.d.ts +35 -0
- package/dist/tracker-adapted/feature-flags-adapted.d.ts +23 -0
- package/dist/tracker-adapted/input-adapted.d.ts +37 -0
- package/dist/tracker-adapted/integrations-adapted.d.ts +157 -0
- package/dist/tracker-adapted/mixpanel-adapted.d.ts +19 -0
- package/dist/tracker-adapted/ml-alerts-adapted.d.ts +24 -0
- package/dist/tracker-adapted/mouse-adapted.d.ts +16 -0
- package/dist/tracker-adapted/network-adapted.d.ts +25 -0
- package/dist/tracker-adapted/offline-resilient-queue.d.ts +66 -0
- package/dist/tracker-adapted/performance-adapted.d.ts +13 -0
- package/dist/tracker-adapted/sourcemap-uploader-adapted.d.ts +19 -0
- package/dist/tracker-adapted/sourcemapreader-adapted.d.ts +19 -0
- package/dist/tracker-adapted/state-adapted.d.ts +17 -0
- package/dist/traffic-attribution.d.ts +39 -0
- package/dist/traffic-valuation-engine.d.ts +68 -0
- package/dist/types.d.ts +3 -3
- package/dist/ucp-validator.d.ts +67 -0
- package/dist/unified-hybrid-scorer.d.ts +86 -0
- package/dist/universal-seo-bridge.d.ts +174 -0
- package/dist/urlytics-engine.d.ts +0 -1
- package/dist/user-agent-parser.d.ts +25 -0
- package/dist/user-id-tracking.d.ts +74 -0
- package/dist/user-journeys-advanced.d.ts +30 -0
- package/dist/user-journeys.d.ts +19 -0
- package/dist/user-traits.d.ts +15 -0
- package/dist/utm-conventions.d.ts +37 -0
- package/dist/video-seo-metadata-optimizer.d.ts +54 -0
- package/dist/video-youtube-analyzer.d.ts +11 -0
- package/dist/wayback-client.d.ts +36 -0
- package/dist/webhook-service.d.ts +98 -0
- package/dist/webhooks-dispatcher.d.ts +178 -0
- package/dist/weekly-report.d.ts +40 -0
- package/dist/white-label-exports.d.ts +50 -0
- package/dist/word-frequency-analyzer.d.ts +48 -0
- package/dist/xlsx-workbook.d.ts +15 -0
- package/dist/xray-dashboard.d.ts +76 -0
- package/dist/yoast-parity.d.ts +86 -5
- package/dist/yoast-schema-graph.d.ts +39 -0
- package/dist/yoast-variable-replacer.d.ts +34 -0
- package/dist/yotpo-sync-engine.d.ts +28 -0
- package/dist/youtube-api-client.d.ts +139 -0
- package/package.json +32 -8
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { QueryValue } from "../filters/types";
|
|
2
|
+
import type { ParameterValues, SemanticParameter } from "./types";
|
|
3
|
+
export interface ParameterResolutionOptions {
|
|
4
|
+
/** Utiliser la valeur par defaut du parametre. Vrai par defaut. */
|
|
5
|
+
useDefault?: boolean;
|
|
6
|
+
/** Valeurs retenues au tour precedent. */
|
|
7
|
+
lastUsed?: ParameterValues;
|
|
8
|
+
}
|
|
9
|
+
export type ResolvedParameters = Record<string, QueryValue | QueryValue[]>;
|
|
10
|
+
/**
|
|
11
|
+
* Fusionne les parametres declares par le modele et ceux declares par la
|
|
12
|
+
* requete. La requete l'emporte sur le modele pour un meme nom : c'est
|
|
13
|
+
* elle qui sait ce qu'elle fournit, et une requete agent peut affiner la
|
|
14
|
+
* declaration d'un modele sans le modifier.
|
|
15
|
+
*/
|
|
16
|
+
export declare function mergeParameters(modelParameters?: SemanticParameter[], queryParameters?: SemanticParameter[]): SemanticParameter[];
|
|
17
|
+
/**
|
|
18
|
+
* Resout les valeurs des parametres declares.
|
|
19
|
+
*
|
|
20
|
+
* Echec explicite dans trois cas : un parametre fourni n'est pas declare, un
|
|
21
|
+
* parametre obligatoire n'a pas de valeur, une valeur n'est pas du type
|
|
22
|
+
* attendu. Aucun de ces cas ne se degrade silencieusement : une requete
|
|
23
|
+
* qui s'execute avec des valeurs differentes de celles demandees est
|
|
24
|
+
* pire qu'une requete qui echoue.
|
|
25
|
+
*/
|
|
26
|
+
export declare function resolveParameterValues(parameters?: SemanticParameter[], values?: ParameterValues, options?: ParameterResolutionOptions): ResolvedParameters;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { QueryValue } from "../filters/types";
|
|
2
|
+
/**
|
|
3
|
+
* Types de parametre exposes par la couche semantique.
|
|
4
|
+
*
|
|
5
|
+
* Le vocabulaire est celui des types de champ deja supportes par les
|
|
6
|
+
* filtres (`FilterFieldType`), plus `category` qui decrit un parametre a
|
|
7
|
+
* choix multiple parmi une liste fermee.
|
|
8
|
+
*/
|
|
9
|
+
export declare const PARAMETER_TYPES: readonly ["string", "number", "boolean", "date", "category"];
|
|
10
|
+
export type ParameterType = (typeof PARAMETER_TYPES)[number];
|
|
11
|
+
export interface SemanticParameter {
|
|
12
|
+
/** Identifiant du parametre, utilise dans le SQL et les filtres. */
|
|
13
|
+
name: string;
|
|
14
|
+
type: ParameterType;
|
|
15
|
+
label?: string;
|
|
16
|
+
default?: QueryValue | QueryValue[];
|
|
17
|
+
required?: boolean;
|
|
18
|
+
/** Valeurs autorisees pour le type `category`. */
|
|
19
|
+
options?: QueryValue[];
|
|
20
|
+
/** Le parametre accepte une liste de valeurs. */
|
|
21
|
+
multiple?: boolean;
|
|
22
|
+
}
|
|
23
|
+
export type ParameterValues = Record<string, QueryValue | QueryValue[]>;
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import type { QueryValue } from "../filters/types";
|
|
2
|
+
import type { ParameterType, ParameterValues, SemanticParameter } from "./types";
|
|
3
|
+
/**
|
|
4
|
+
* Semantique des valeurs de parametre.
|
|
5
|
+
*
|
|
6
|
+
* Port cible de `metabase-lib/v1/parameters/utils/parameter-values.ts`, avec
|
|
7
|
+
* deux divergences assumees :
|
|
8
|
+
*
|
|
9
|
+
* 1. Metabase renvoie toujours un tableau pour les types `string` et `number`
|
|
10
|
+
* parce que ses widgets sont multi-selection par defaut. LynxSEO rend
|
|
11
|
+
* l'unicite explicite via `multiple`, donc un parametre simple reste un
|
|
12
|
+
* scalaire.
|
|
13
|
+
* 2. Metabase compare l'egalite de deux jeux de valeurs via `_.isEqual`.
|
|
14
|
+
* L'egalite est ici definie sans dependance : memes elements, ordre
|
|
15
|
+
* indifferent.
|
|
16
|
+
*/
|
|
17
|
+
export declare function isParameterValueEmpty(value: unknown): boolean;
|
|
18
|
+
/**
|
|
19
|
+
* Normalise une valeur brute vers le type du parametre.
|
|
20
|
+
*
|
|
21
|
+
* Retourne `null` quand la valeur ne peut pas etre convertie : la
|
|
22
|
+
* validation du type est une decision de l'appelant (un parametre
|
|
23
|
+
* obligatoire doit echouer, un parametre optionnel doit retomber sur sa
|
|
24
|
+
* valeur par defaut).
|
|
25
|
+
*/
|
|
26
|
+
export declare function normalizeParameterValue(type: ParameterType, value: unknown, multiple?: boolean): QueryValue | QueryValue[] | null;
|
|
27
|
+
export interface ParameterValueLookup {
|
|
28
|
+
parameter: SemanticParameter;
|
|
29
|
+
values?: ParameterValues;
|
|
30
|
+
/** Utiliser la valeur par defaut du parametre. */
|
|
31
|
+
useDefault?: boolean;
|
|
32
|
+
/** Valeur retenue au tour precedent, prioritaire sur tout le reste. */
|
|
33
|
+
lastUsedParameterValue?: QueryValue | QueryValue[];
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Valeur effective d'un parametre.
|
|
37
|
+
*
|
|
38
|
+
* Ordre de precedence : valeur retenue au tour precedent, valeur fournie,
|
|
39
|
+
* valeur par defaut, `null`.
|
|
40
|
+
*/
|
|
41
|
+
export declare function getParameterValue({ parameter, values, useDefault, lastUsedParameterValue, }: ParameterValueLookup): QueryValue | QueryValue[];
|
|
42
|
+
/**
|
|
43
|
+
* Egalite de deux jeux de valeurs de parametre : memes elements, ordre
|
|
44
|
+
* indifferent. Deux listes de longueurs differentes ne sont jamais egales.
|
|
45
|
+
*/
|
|
46
|
+
export declare function areParameterValuesIdentical(a: QueryValue | QueryValue[] | undefined, b: QueryValue | QueryValue[] | undefined): boolean;
|
|
47
|
+
export type ParameterValidation = {
|
|
48
|
+
ok: true;
|
|
49
|
+
value: QueryValue | QueryValue[];
|
|
50
|
+
} | {
|
|
51
|
+
ok: false;
|
|
52
|
+
error: string;
|
|
53
|
+
};
|
|
54
|
+
/**
|
|
55
|
+
* Valide une valeur contre la declaration d'un parametre.
|
|
56
|
+
*
|
|
57
|
+
* Le type `date` accepte une date ISO ou un instant epoch, normalisee en
|
|
58
|
+
* jour ISO `YYYY-MM-DD` — c'est la granularite des operateurs temporels.
|
|
59
|
+
*/
|
|
60
|
+
export declare function validateParameterValue(parameter: SemanticParameter, value: unknown): ParameterValidation;
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Le pont entre une période relative et un filtre.
|
|
3
|
+
*
|
|
4
|
+
* Un filtre persisté porte des bornes (« entre le 1er et le 31 »). Une
|
|
5
|
+
* période relative (« les 30 derniers jours ») se transforme en ces bornes au
|
|
6
|
+
* moment de la compilation : le SQL et l'évaluation en mémoire ne voient
|
|
7
|
+
* ainsi qu'un `between` ordinaire, et les deux backends ne peuvent pas
|
|
8
|
+
* diverger.
|
|
9
|
+
*/
|
|
10
|
+
import type { QueryFilter, RelativePeriod } from "../filters/types";
|
|
11
|
+
/** Les options de résolution d'une période. */
|
|
12
|
+
export interface PeriodResolutionOptions {
|
|
13
|
+
/** Le moment de référence de la période. */
|
|
14
|
+
now?: Date;
|
|
15
|
+
/** Le premier jour de la semaine : 1 = lundi, 0 = dimanche. */
|
|
16
|
+
firstDayOfWeek?: number;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Transforme une période relative en filtre `between` sur des jours ISO.
|
|
20
|
+
*
|
|
21
|
+
* Le filtre porte la période d'origine : l'interface peut donc afficher
|
|
22
|
+
* « les 30 derniers jours » alors que l'exécution porte des bornes.
|
|
23
|
+
*/
|
|
24
|
+
export declare function relativePeriodToFilter(field: string, period: RelativePeriod, options?: PeriodResolutionOptions): QueryFilter;
|
|
25
|
+
/**
|
|
26
|
+
* Résout la période d'un filtre, si elle en porte une.
|
|
27
|
+
*
|
|
28
|
+
* Un filtre qui porte déjà une valeur n'est pas touché : ses bornes ont été
|
|
29
|
+
* résolues à la création, et les ré-resoudre à l'exécution ferait bouger une
|
|
30
|
+
* fenêtre qui ne doit pas bouger.
|
|
31
|
+
*/
|
|
32
|
+
export declare function resolvePeriodFilter(filter: QueryFilter, options?: PeriodResolutionOptions): QueryFilter;
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Les périodes relatives.
|
|
3
|
+
*
|
|
4
|
+
* Comparer une période à la précédente est le premier besoin d'un tableau de
|
|
5
|
+
* bord SEO : « ce mois-ci contre le mois dernier », « les 30 derniers jours
|
|
6
|
+
* contre les 30 précédents ». Exprimer une fenêtre en dur (« 2026-09-01 » →
|
|
7
|
+
* « 2026-09-30 ») figeait la requête ; l'exprimer en période relative la rend
|
|
8
|
+
* reproductible et comparable d'une exécution à l'autre.
|
|
9
|
+
*
|
|
10
|
+
* La sémantique est celle de Metabase (`src/metabase/util/time/impl.clj`,
|
|
11
|
+
* fonction `to-range`) : une période est un point d'ancrage plus une
|
|
12
|
+
* quantité d'unités, et la fenêtre est **bornée inclusive**.
|
|
13
|
+
*/
|
|
14
|
+
import { RELATIVE_UNITS, type RelativePeriod, type RelativeUnit } from "../filters/types";
|
|
15
|
+
export { RELATIVE_UNITS };
|
|
16
|
+
export type { RelativePeriod, RelativeUnit };
|
|
17
|
+
/** Une fenêtre résolue, bornes inclusives. */
|
|
18
|
+
export interface PeriodRange {
|
|
19
|
+
/** Le premier instant de la fenêtre. */
|
|
20
|
+
start: Date;
|
|
21
|
+
/** Le dernier instant de la fenêtre, inclus. */
|
|
22
|
+
end: Date;
|
|
23
|
+
}
|
|
24
|
+
/** Les bornes calendaires d'une fenêtre, au format jour ISO. */
|
|
25
|
+
export interface PeriodBounds {
|
|
26
|
+
/** Le premier jour de la fenêtre, `YYYY-MM-DD`. */
|
|
27
|
+
startDay: string;
|
|
28
|
+
/** Le dernier jour de la fenêtre, `YYYY-MM-DD`. */
|
|
29
|
+
endDay: string;
|
|
30
|
+
}
|
|
31
|
+
/** Le premier jour de la semaine : 1 = lundi (ISO), 0 = dimanche. */
|
|
32
|
+
export declare const DEFAULT_FIRST_DAY_OF_WEEK = 1;
|
|
33
|
+
/**
|
|
34
|
+
* Ajoute un nombre d'unités calendaires à une date.
|
|
35
|
+
*
|
|
36
|
+
* Les unités jour et semaine sont des durées fixes ; mois, trimestre et année
|
|
37
|
+
* sont des unités calendaires, bornées à la fin du mois.
|
|
38
|
+
*/
|
|
39
|
+
export declare function addRelativeUnits(date: Date, unit: RelativeUnit, count: number): Date;
|
|
40
|
+
/**
|
|
41
|
+
* Tronque une date à son unité calendaire.
|
|
42
|
+
*
|
|
43
|
+
* La troncature est faite en UTC : la fenêtre d'un jour est la même partout,
|
|
44
|
+
* que le serveur soit à Paris ou à Tokyo.
|
|
45
|
+
*/
|
|
46
|
+
export declare function truncateToRelativeUnit(date: Date, unit: RelativeUnit, firstDayOfWeek?: number): Date;
|
|
47
|
+
/**
|
|
48
|
+
* Résout une période relative en fenêtre de dates.
|
|
49
|
+
*
|
|
50
|
+
* Le point d'ancrage se déplace d'abord vers le passé (`value` négatif) ou
|
|
51
|
+
* vers l'unité suivante (`value` positif sans période courante incluse), puis
|
|
52
|
+
* d'un éventuel décalage. La fenêtre couvre ensuite `value` unités
|
|
53
|
+
* calendaires entières, la période courante étant comptée en plus si elle est
|
|
54
|
+
* incluse.
|
|
55
|
+
*/
|
|
56
|
+
export declare function resolveRelativePeriod(period: RelativePeriod, now?: Date, firstDayOfWeek?: number): PeriodRange;
|
|
57
|
+
/** Les bornes calendaires d'une période, au format jour ISO. */
|
|
58
|
+
export declare function relativePeriodBounds(period: RelativePeriod, now?: Date, firstDayOfWeek?: number): PeriodBounds;
|
|
59
|
+
/** Un raccourci de période proposé par l'interface. */
|
|
60
|
+
export interface RelativePeriodPreset {
|
|
61
|
+
/** L'identifiant stable du raccourci. */
|
|
62
|
+
id: string;
|
|
63
|
+
/** Le libellé affiché. */
|
|
64
|
+
label: string;
|
|
65
|
+
/** La période que le raccourci exprime. */
|
|
66
|
+
period: RelativePeriod;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Les raccourcis de période.
|
|
70
|
+
*
|
|
71
|
+
* Ils reprennent les raccourcis de Metabase
|
|
72
|
+
* (`frontend/src/metabase/querying/common/components/DatePicker/DateShortcutPicker/constants.ts`)
|
|
73
|
+
* et couvrent les besoins d'un tableau de bord SEO : la période en cours, la
|
|
74
|
+
* période précédente, et les fenêtres glissantes de 7, 30 jours, 3 et 12
|
|
75
|
+
* mois.
|
|
76
|
+
*/
|
|
77
|
+
export declare const RELATIVE_PERIOD_PRESETS: readonly RelativePeriodPreset[];
|
|
78
|
+
/** Le raccourci de période d'un identifiant donné. */
|
|
79
|
+
export declare function relativePeriodPreset(id: string): RelativePeriodPreset;
|
|
80
|
+
/**
|
|
81
|
+
* Décrit une période relative en français, à partir de ses bornes résolues.
|
|
82
|
+
*
|
|
83
|
+
* La description nomme la fenêtre réellement couverte, pas l'expression :
|
|
84
|
+
* « 1 – 7 octobre 2026 » est plus utile qu'« il y a 7 jours ».
|
|
85
|
+
*/
|
|
86
|
+
export declare function describeRelativePeriod(period: RelativePeriod, now?: Date, firstDayOfWeek?: number): string;
|
|
@@ -0,0 +1,197 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { type SemanticQueryInput } from "./agent-schema";
|
|
3
|
+
import type { SqlDialect } from "./dialects";
|
|
4
|
+
import type { CompiledQuery, SemanticModel } from "./types";
|
|
5
|
+
/**
|
|
6
|
+
* Pipelines semantiques : un "notebook" de requete.
|
|
7
|
+
*
|
|
8
|
+
* Un pipeline est une suite ORDONNEE d'etapes (filtre, agregation,
|
|
9
|
+
* expression, tri, limite). La source est **implicite** : c'est le modele
|
|
10
|
+
* semantique que le pipeline cible (`doc.model`). Le pipeline se serialise en
|
|
11
|
+
* JSON (`pipeline_documents`), se valide a la lecture, puis se compile en SQL
|
|
12
|
+
* parametre via `compileQuery`.
|
|
13
|
+
*
|
|
14
|
+
* Le document ne porte volontairement **pas** l'identifiant de projet : le
|
|
15
|
+
* tenant est injecte par le contexte de compilation, jamais par le document
|
|
16
|
+
* persiste. Un document qui pourrait fixer son propre projet serait une voie
|
|
17
|
+
* de fuite inter-tenant.
|
|
18
|
+
*/
|
|
19
|
+
/** Les types d'etapes reconnus. */
|
|
20
|
+
export type PipelineStageKind = "filter" | "aggregate" | "expression" | "sort" | "limit";
|
|
21
|
+
/**
|
|
22
|
+
* Une etape de pipeline.
|
|
23
|
+
*
|
|
24
|
+
* `config` est un objet libre au niveau du type : sa forme exacte depend du
|
|
25
|
+
* `kind` et est verifiee a l'execution par `pipelineDocumentSchema`. Les cles
|
|
26
|
+
* attendues sont :
|
|
27
|
+
* - `filter` : `{ filters: QueryFilter[] }` ;
|
|
28
|
+
* - `aggregate` : `{ dimensions: string[]; metrics: string[] }` ;
|
|
29
|
+
* - `expression` : `{ name: string; role?: "dimension" | "metric"; expression?: MetricExpr }` ;
|
|
30
|
+
* - `sort` : `{ sort: { by: string; dir: "asc" | "desc" }[] }` ;
|
|
31
|
+
* - `limit` : `{ limit: number; offset?: number }`.
|
|
32
|
+
*/
|
|
33
|
+
export interface PipelineStage {
|
|
34
|
+
id: string;
|
|
35
|
+
kind: PipelineStageKind;
|
|
36
|
+
label?: string;
|
|
37
|
+
config: Record<string, unknown>;
|
|
38
|
+
}
|
|
39
|
+
/** Un pipeline persiste : sa version, son modele et ses etapes ordonnees. */
|
|
40
|
+
export interface PipelineDocument {
|
|
41
|
+
version: 1;
|
|
42
|
+
model: string;
|
|
43
|
+
stages: PipelineStage[];
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Le schema d'un pipeline persiste.
|
|
47
|
+
*
|
|
48
|
+
* Il reutilise `semanticFilterSchema` et `semanticExpressionSchema` du
|
|
49
|
+
* contrat de l'Agent API : la forme d'un filtre ou d'une expression est
|
|
50
|
+
* decrite a UN seul endroit, donc elle ne peut pas diverger entre les deux
|
|
51
|
+
* surfaces.
|
|
52
|
+
*/
|
|
53
|
+
export declare const pipelineDocumentSchema: z.ZodObject<{
|
|
54
|
+
version: z.ZodLiteral<1>;
|
|
55
|
+
model: z.ZodString;
|
|
56
|
+
stages: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
57
|
+
id: z.ZodString;
|
|
58
|
+
kind: z.ZodLiteral<"filter">;
|
|
59
|
+
label: z.ZodOptional<z.ZodString>;
|
|
60
|
+
config: z.ZodObject<{
|
|
61
|
+
filters: z.ZodArray<z.ZodObject<{
|
|
62
|
+
field: z.ZodString;
|
|
63
|
+
operator: z.ZodEnum<{
|
|
64
|
+
equals: "equals";
|
|
65
|
+
not_equals: "not_equals";
|
|
66
|
+
contains: "contains";
|
|
67
|
+
starts_with: "starts_with";
|
|
68
|
+
ends_with: "ends_with";
|
|
69
|
+
greater_than: "greater_than";
|
|
70
|
+
greater_than_or_equal: "greater_than_or_equal";
|
|
71
|
+
less_than: "less_than";
|
|
72
|
+
less_than_or_equal: "less_than_or_equal";
|
|
73
|
+
in: "in";
|
|
74
|
+
not_in: "not_in";
|
|
75
|
+
is_null: "is_null";
|
|
76
|
+
is_not_null: "is_not_null";
|
|
77
|
+
between: "between";
|
|
78
|
+
on: "on";
|
|
79
|
+
not_contains: "not_contains";
|
|
80
|
+
is_empty: "is_empty";
|
|
81
|
+
is_not_empty: "is_not_empty";
|
|
82
|
+
before: "before";
|
|
83
|
+
after: "after";
|
|
84
|
+
}>;
|
|
85
|
+
value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodNull, z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodNull]>>]>>;
|
|
86
|
+
fieldType: z.ZodOptional<z.ZodEnum<{
|
|
87
|
+
string: "string";
|
|
88
|
+
number: "number";
|
|
89
|
+
boolean: "boolean";
|
|
90
|
+
date: "date";
|
|
91
|
+
}>>;
|
|
92
|
+
period: z.ZodOptional<z.ZodObject<{
|
|
93
|
+
unit: z.ZodEnum<{
|
|
94
|
+
day: "day";
|
|
95
|
+
week: "week";
|
|
96
|
+
month: "month";
|
|
97
|
+
quarter: "quarter";
|
|
98
|
+
year: "year";
|
|
99
|
+
}>;
|
|
100
|
+
value: z.ZodNumber;
|
|
101
|
+
offsetUnit: z.ZodOptional<z.ZodEnum<{
|
|
102
|
+
day: "day";
|
|
103
|
+
week: "week";
|
|
104
|
+
month: "month";
|
|
105
|
+
quarter: "quarter";
|
|
106
|
+
year: "year";
|
|
107
|
+
}>>;
|
|
108
|
+
offsetValue: z.ZodOptional<z.ZodNumber>;
|
|
109
|
+
includeCurrent: z.ZodOptional<z.ZodBoolean>;
|
|
110
|
+
}, z.core.$strip>>;
|
|
111
|
+
parameter: z.ZodOptional<z.ZodString>;
|
|
112
|
+
parameterTo: z.ZodOptional<z.ZodString>;
|
|
113
|
+
}, z.core.$strip>>;
|
|
114
|
+
}, z.core.$strip>;
|
|
115
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
116
|
+
id: z.ZodString;
|
|
117
|
+
kind: z.ZodLiteral<"aggregate">;
|
|
118
|
+
label: z.ZodOptional<z.ZodString>;
|
|
119
|
+
config: z.ZodObject<{
|
|
120
|
+
dimensions: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
121
|
+
metrics: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
122
|
+
}, z.core.$strip>;
|
|
123
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
124
|
+
id: z.ZodString;
|
|
125
|
+
kind: z.ZodLiteral<"expression">;
|
|
126
|
+
label: z.ZodOptional<z.ZodString>;
|
|
127
|
+
config: z.ZodObject<{
|
|
128
|
+
name: z.ZodString;
|
|
129
|
+
role: z.ZodDefault<z.ZodEnum<{
|
|
130
|
+
metric: "metric";
|
|
131
|
+
dimension: "dimension";
|
|
132
|
+
}>>;
|
|
133
|
+
expression: z.ZodOptional<z.ZodObject<{
|
|
134
|
+
kind: z.ZodEnum<{
|
|
135
|
+
column: "column";
|
|
136
|
+
binary: "binary";
|
|
137
|
+
literal: "literal";
|
|
138
|
+
call: "call";
|
|
139
|
+
agg: "agg";
|
|
140
|
+
case: "case";
|
|
141
|
+
ifnull: "ifnull";
|
|
142
|
+
}>;
|
|
143
|
+
}, z.core.$loose>>;
|
|
144
|
+
}, z.core.$strip>;
|
|
145
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
146
|
+
id: z.ZodString;
|
|
147
|
+
kind: z.ZodLiteral<"sort">;
|
|
148
|
+
label: z.ZodOptional<z.ZodString>;
|
|
149
|
+
config: z.ZodObject<{
|
|
150
|
+
sort: z.ZodArray<z.ZodObject<{
|
|
151
|
+
by: z.ZodString;
|
|
152
|
+
dir: z.ZodEnum<{
|
|
153
|
+
asc: "asc";
|
|
154
|
+
desc: "desc";
|
|
155
|
+
}>;
|
|
156
|
+
}, z.core.$strip>>;
|
|
157
|
+
}, z.core.$strip>;
|
|
158
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
159
|
+
id: z.ZodString;
|
|
160
|
+
kind: z.ZodLiteral<"limit">;
|
|
161
|
+
label: z.ZodOptional<z.ZodString>;
|
|
162
|
+
config: z.ZodObject<{
|
|
163
|
+
limit: z.ZodNumber;
|
|
164
|
+
offset: z.ZodOptional<z.ZodNumber>;
|
|
165
|
+
}, z.core.$strip>;
|
|
166
|
+
}, z.core.$strip>], "kind">>;
|
|
167
|
+
}, z.core.$strip>;
|
|
168
|
+
/**
|
|
169
|
+
* Lit et valide un pipeline depuis son JSON persiste.
|
|
170
|
+
*
|
|
171
|
+
* Le `JSON.parse` est isole dans un `try/catch` : un document corrompu leve
|
|
172
|
+
* une erreur explicite, jamais un `undefined` silencieux. Aucun `as` n'est
|
|
173
|
+
* utilise : la validation zod produit seule le type de sortie.
|
|
174
|
+
*/
|
|
175
|
+
export declare function parsePipelineDocument(json: string): PipelineDocument;
|
|
176
|
+
/**
|
|
177
|
+
* Convertit un document de pipeline en entree de requete.
|
|
178
|
+
*
|
|
179
|
+
* Les etapes sont parcourues DANS L'ORDRE : les filtres s'accumulent, les
|
|
180
|
+
* dimensions et les metriques s'ajoutent dans l'ordre de declaration, le tri
|
|
181
|
+
* s'empile, et la derniere etape de limite l'emporte. Le `projectId` n'est pas
|
|
182
|
+
* porte par le document : il est fourni par l'appelant (contexte de tenant).
|
|
183
|
+
*/
|
|
184
|
+
export declare function pipelineDocumentToQueryInput(doc: PipelineDocument, projectId?: string): SemanticQueryInput;
|
|
185
|
+
/**
|
|
186
|
+
* Compile un pipeline en SQL parametre.
|
|
187
|
+
*
|
|
188
|
+
* Le deuxieme argument est le JSON BRUT du pipeline (tel que persiste dans
|
|
189
|
+
* `semantic_pipelines.pipeline_json`) : le parsing et la validation restent
|
|
190
|
+
* dans le moteur, l'appelant ne manipule jamais d'objet non verifie.
|
|
191
|
+
*
|
|
192
|
+
* Le `context` porte l'isolation du tenant (`{ projectId }`) : il est
|
|
193
|
+
* transmis tel quel a `compileQuery`.
|
|
194
|
+
*/
|
|
195
|
+
export declare function compilePipelineToQuery(model: SemanticModel, pipelineJson: string, dialect: SqlDialect, context?: Record<string, unknown>, options?: {
|
|
196
|
+
now?: Date;
|
|
197
|
+
}): CompiledQuery;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { SemanticQuery, SemanticModel, CompiledQuery } from "./types";
|
|
2
|
+
import type { PivotResult } from "./pivot";
|
|
3
|
+
import type { SqlDialect } from "./dialects/types";
|
|
4
|
+
export interface PivotOptions {
|
|
5
|
+
rows: string[];
|
|
6
|
+
cols: string[];
|
|
7
|
+
metrics: string[];
|
|
8
|
+
showRowTotals: boolean;
|
|
9
|
+
showColumnTotals: boolean;
|
|
10
|
+
showGrandTotal: boolean;
|
|
11
|
+
includeSubtotals: boolean;
|
|
12
|
+
}
|
|
13
|
+
export interface PivotSubQuery {
|
|
14
|
+
label: string;
|
|
15
|
+
groupBy: string[];
|
|
16
|
+
isTotal: boolean;
|
|
17
|
+
query: SemanticQuery;
|
|
18
|
+
}
|
|
19
|
+
export declare function breakoutCombinations(numBreakouts: number, pivotRows: number[] | null, pivotCols: number[] | null): number[][];
|
|
20
|
+
export declare function generatePivotSubQueries(query: SemanticQuery, options: PivotOptions): PivotSubQuery[];
|
|
21
|
+
export declare function compileGroupingSets(groupBy: string[], combinations: number[][], dialect: SqlDialect): {
|
|
22
|
+
sql: string;
|
|
23
|
+
groupingMarker: string;
|
|
24
|
+
};
|
|
25
|
+
export declare function executePivot(query: SemanticQuery, options: PivotOptions, dialect: SqlDialect, executor: (compiled: CompiledQuery) => Promise<{
|
|
26
|
+
columns: {
|
|
27
|
+
name: string;
|
|
28
|
+
type?: string;
|
|
29
|
+
}[];
|
|
30
|
+
rows: Record<string, unknown>[];
|
|
31
|
+
}>, model?: SemanticModel, compile?: (model: SemanticModel, q: SemanticQuery, d: SqlDialect) => CompiledQuery): Promise<PivotResult>;
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Le pivot LynxSEO : un jeu plat devient un tableau large (lignes × colonnes).
|
|
3
|
+
*
|
|
4
|
+
* Réécriture du concept de Metabase (`src/metabase/pivot/core.cljc` et
|
|
5
|
+
* `frontend/src/metabase-lib/v1/queries/utils/pivot.ts`). Aucun code de
|
|
6
|
+
* l'amont n'est repris : là-haut le pivot passe par une requête LQL, un
|
|
7
|
+
* composant React et des sous-totaux annotés par un `pivot-grouping` ; ici
|
|
8
|
+
* le pivot est une transformation **pure** du jeu déjà reçu.
|
|
9
|
+
*/
|
|
10
|
+
import type { Dataset, DatasetValue } from "../chart-plan/dataset";
|
|
11
|
+
export interface PivotSpec {
|
|
12
|
+
/** Dimensions qui constituent la clé de ligne. */
|
|
13
|
+
rowFields: string[];
|
|
14
|
+
/**
|
|
15
|
+
* Dimensions dont les valeurs deviennent les colonnes.
|
|
16
|
+
*
|
|
17
|
+
* Metabase répartit le pivot en `pivot_table.column_split = { rows,
|
|
18
|
+
* columns, values }` : `columns` est une **liste**. Croiser deux
|
|
19
|
+
* dimensions (par exemple l'appareil et le pays) donne une colonne par
|
|
20
|
+
* combinaison de leurs valeurs.
|
|
21
|
+
*/
|
|
22
|
+
columnFields: string[];
|
|
23
|
+
/** Mesures croisées avec les valeurs des dimensions de colonne. */
|
|
24
|
+
valueFields: string[];
|
|
25
|
+
/** Ajoute une colonne « Total » qui somme les cellules de chaque ligne. */
|
|
26
|
+
showRowTotals?: boolean;
|
|
27
|
+
/** Ajoute une ligne « Total » qui somme les cellules de chaque colonne. */
|
|
28
|
+
showColumnTotals?: boolean;
|
|
29
|
+
}
|
|
30
|
+
export interface PivotResult {
|
|
31
|
+
/** Noms des colonnes du tableau large, dans l'ordre d'affichage. */
|
|
32
|
+
columns: string[];
|
|
33
|
+
/** Une ligne par combinaison des dimensions de ligne. */
|
|
34
|
+
rows: Record<string, DatasetValue>[];
|
|
35
|
+
/**
|
|
36
|
+
* Combinaisons de valeurs des dimensions de colonne, triées. Avec une
|
|
37
|
+
* seule dimension de colonne, c'est la liste de ses valeurs ; avec
|
|
38
|
+
* plusieurs, chaque entrée est la jointure des valeurs par ` — `.
|
|
39
|
+
*/
|
|
40
|
+
columnValues: string[];
|
|
41
|
+
}
|
|
42
|
+
export declare function pivotDataset(dataset: Dataset, spec: PivotSpec): PivotResult;
|
|
43
|
+
/** Colonnes et lignes d'un resultat de requete, telles que servies par l'API. */
|
|
44
|
+
export interface QueryResultLike {
|
|
45
|
+
columns: {
|
|
46
|
+
name: string;
|
|
47
|
+
type?: string;
|
|
48
|
+
}[];
|
|
49
|
+
rows: Record<string, DatasetValue>[];
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Pivote un resultat de requete.
|
|
53
|
+
*
|
|
54
|
+
* Le pivot est applique **cote serveur** : la question enregistree porte
|
|
55
|
+
* son pivot, donc c'est la reponse servie — et non l'affichage — qui est
|
|
56
|
+
* croisee. Le client recoit alors le meme tableau large que l'API.
|
|
57
|
+
*/
|
|
58
|
+
export declare function pivotQueryResult(result: QueryResultLike, spec: PivotSpec): PivotResult;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Primitives arithmétiques partagées par la couche sémantique.
|
|
3
|
+
*
|
|
4
|
+
* Ces trois fonctions sont l'**unique** définition de la division sûre, du
|
|
5
|
+
* pourcentage sûr et de la normalisation d'un CTR. Le registre SEO
|
|
6
|
+
* (`seo-metric-registry.ts`) les ré-exporte, et l'évaluateur en mémoire
|
|
7
|
+
* (`eval-memory.ts`) les utilise : les déplacer ici permet au registre de
|
|
8
|
+
* s'appuyer sur l'évaluateur sans créer un cycle d'import entre les deux
|
|
9
|
+
* modules. L'API publique du registre est inchangée.
|
|
10
|
+
*/
|
|
11
|
+
/**
|
|
12
|
+
* Division that never returns NaN/Infinity: a zero denominator yields 0, which
|
|
13
|
+
* is what every reporting screen has to show before any data exists.
|
|
14
|
+
*/
|
|
15
|
+
export declare function safeRatio(numerator: number, denominator: number): number;
|
|
16
|
+
/** `safeRatio` expressed as a percentage. */
|
|
17
|
+
export declare function safePercent(numerator: number, denominator: number, precision?: number): number;
|
|
18
|
+
/**
|
|
19
|
+
* Accepts both shapes a CTR arrives in: a ratio (0.42) or a percentage string
|
|
20
|
+
* already parsed (42). Replaces the `if (ctr > 1) ctr /= 100` heuristic that
|
|
21
|
+
* silently mangled a genuine ratio of exactly 1.
|
|
22
|
+
*/
|
|
23
|
+
export declare function normalizeCtrInput(value: number): number;
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import type { ParameterValues } from "./parameters/types";
|
|
2
|
+
import type { SemanticQuery } from "./types";
|
|
3
|
+
/**
|
|
4
|
+
* Une question enregistree.
|
|
5
|
+
*
|
|
6
|
+
* Un **modele** semantique decrit une source et ses dimensions/metriques ; une
|
|
7
|
+
* **question** est une instance executable de ce modele : un nom, une requete,
|
|
8
|
+
* des valeurs de parametres et un mode d'affichage.
|
|
9
|
+
*
|
|
10
|
+
* Le concept est repris de la carte de Metabase (`metabase-lib/v1/Question.ts`) :
|
|
11
|
+
* une requete nommee, reutilisable, executable a la demande. Aucun code de
|
|
12
|
+
* l'amont n'est repris.
|
|
13
|
+
*
|
|
14
|
+
* La question ne declare **pas** ses parametres : ils sont declares par le
|
|
15
|
+
* modele. Elle ne porte que les **valeurs**. C'est ce qui permet de changer
|
|
16
|
+
* la declaration d'un parametre sans reecrire toutes les questions qui
|
|
17
|
+
* l'utilisent.
|
|
18
|
+
*/
|
|
19
|
+
export type QuestionDisplay = "table" | "chart";
|
|
20
|
+
export interface SemanticQuestion {
|
|
21
|
+
id?: string;
|
|
22
|
+
name: string;
|
|
23
|
+
description?: string;
|
|
24
|
+
/** Nom du modele semantique execute. */
|
|
25
|
+
model: string;
|
|
26
|
+
/** Requete posee sur ce modele. */
|
|
27
|
+
query: SemanticQuery;
|
|
28
|
+
/** Mode d'affichage du resultat. */
|
|
29
|
+
display: QuestionDisplay;
|
|
30
|
+
/** Valeurs des parametres declares par le modele. */
|
|
31
|
+
parameterValues?: ParameterValues;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Serialisation canonique : les cles d'objet sont triees, l'ordre des tableaux
|
|
35
|
+
* est conserve.
|
|
36
|
+
*
|
|
37
|
+
* Deux objets semantiquement egaux doivent produire la meme chaine, quelle que
|
|
38
|
+
* soit l'ordre dans lequel leurs cles ont ete ecrites. C'est la base de la
|
|
39
|
+
* cle de cache : une question reecrite avec les memes valeurs dans un autre
|
|
40
|
+
* ordre ne doit pas invalider le cache.
|
|
41
|
+
*/
|
|
42
|
+
export declare function canonicalJson(value: unknown): string;
|
|
43
|
+
/**
|
|
44
|
+
* Hash FNV-1a sur 64 bits (deux mots de 32 bits).
|
|
45
|
+
*
|
|
46
|
+
* Le moteur ne peut pas utiliser `crypto.subtle` : l'API est asynchrone et
|
|
47
|
+
* n'existe pas partout. Un hash de cabinet synchrone et sans dependance suffit
|
|
48
|
+
* ici — son role est de distinguer deux questions, pas de resister a une
|
|
49
|
+
* attaque par collision.
|
|
50
|
+
*/
|
|
51
|
+
export declare function hashCanonical(value: string): string;
|
|
52
|
+
/**
|
|
53
|
+
* Cle de cache d'une question.
|
|
54
|
+
*
|
|
55
|
+
* Elle depend du modele, de la requete et des valeurs de parametres — pas du
|
|
56
|
+
* nom de la question, ni de son identifiant : renommer une question ne doit
|
|
57
|
+
* pas invalider son cache, mais changer une valeur de filtre doit.
|
|
58
|
+
*/
|
|
59
|
+
export declare function questionCacheKey(question: SemanticQuestion): string;
|
|
60
|
+
/**
|
|
61
|
+
* Complete une question par ses valeurs par defaut.
|
|
62
|
+
*
|
|
63
|
+
* Une question enregistree sans nom porte le nom de son modele ; sans mode
|
|
64
|
+
* d'affichage, elle s'affiche en tableau.
|
|
65
|
+
*/
|
|
66
|
+
export declare function normalizeQuestion(question: SemanticQuestion): SemanticQuestion;
|
|
67
|
+
/**
|
|
68
|
+
* Une question est exécutable si elle vise un modele et demande au moins une
|
|
69
|
+
* dimension ou une metrique : sans elle, la requete ne selectionnerait rien.
|
|
70
|
+
*/
|
|
71
|
+
export declare function isQuestionRunnable(question: SemanticQuestion): boolean;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { SemanticModel, SemanticSegment } from "./types";
|
|
2
|
+
/**
|
|
3
|
+
* L'interface unique d'acces aux modeles semantiques.
|
|
4
|
+
*
|
|
5
|
+
* Deux implementations : le **catalogue** livre en dur dans le moteur, et le
|
|
6
|
+
* **registre base** qui porte les modeles ecrits par l'utilisateur. Les deux
|
|
7
|
+
* se fusionnent a la lecture : un modele utilisateur portant le meme nom
|
|
8
|
+
* **ecrase** le modele livre (surcharge controlee).
|
|
9
|
+
*/
|
|
10
|
+
export interface SemanticRegistry {
|
|
11
|
+
listModels(): Promise<SemanticModel[]>;
|
|
12
|
+
getModel(name: string): Promise<SemanticModel | null>;
|
|
13
|
+
/**
|
|
14
|
+
* Modele par identifiant persiste.
|
|
15
|
+
*
|
|
16
|
+
* Les surfaces qui recoivent un identifiant (pipeline enregistre, question
|
|
17
|
+
* mathematisee) ne connaissent pas le nom : resoudre par nom les forcerait a
|
|
18
|
+
* un aller-retour supplementaire, et un renommage casserait le lien.
|
|
19
|
+
*/
|
|
20
|
+
getModelById(id: string): Promise<SemanticModel | null>;
|
|
21
|
+
saveModel(model: SemanticModel): Promise<void>;
|
|
22
|
+
deleteModel(id: string): Promise<void>;
|
|
23
|
+
listSegments(model?: string): Promise<SemanticSegment[]>;
|
|
24
|
+
saveSegment(segment: SemanticSegment): Promise<void>;
|
|
25
|
+
}
|
|
26
|
+
export declare function createCatalogRegistry(models: SemanticModel[]): SemanticRegistry;
|
|
27
|
+
/**
|
|
28
|
+
* Fusionne un registre de base et un registre utilisateur. Le registre
|
|
29
|
+
* utilisateur ecrase le catalogue pour un modele de meme nom.
|
|
30
|
+
*/
|
|
31
|
+
export declare function createOverlayRegistry(base: SemanticRegistry, overlay: SemanticRegistry): SemanticRegistry;
|