@besaitech/ng-design-system 0.0.67 → 0.0.68

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/index.d.ts CHANGED
@@ -3,7 +3,6 @@ import { OnDestroy, ElementRef, TemplateRef, WritableSignal, OnInit, InjectionTo
3
3
  import { SafeHtml } from '@angular/platform-browser';
4
4
  import { ControlValueAccessor, Validator, AbstractControl, ValidationErrors } from '@angular/forms';
5
5
  import * as _besaitech_ng_design_system from '@besaitech/ng-design-system';
6
- import * as d3_scale from 'd3-scale';
7
6
 
8
7
  /**
9
8
  * Curated set of line icons (Lucide-style, 24x24 viewBox, stroke-based).
@@ -158,7 +157,7 @@ type SdsIconSize = 'sm' | 'md' | 'lg' | 'xl';
158
157
  declare class SdsIcon {
159
158
  private readonly sanitizer;
160
159
  /** Icon identifier from the registry. */
161
- readonly name: _angular_core.InputSignal<"search" | "filter" | "chart-column" | "chart-line" | "chart-bar" | "chart-area" | "chart-pie" | "chart-scatter" | "grid-3x3" | "activity" | "gauge" | "trending-up" | "trending-down" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "file-check" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs">;
160
+ readonly name: _angular_core.InputSignal<"chart-column" | "chart-line" | "chart-bar" | "chart-area" | "chart-pie" | "chart-scatter" | "grid-3x3" | "activity" | "gauge" | "trending-up" | "trending-down" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "search" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "filter" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "file-check" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs">;
162
161
  /** Square size: a pixel number, a numeric string, or a keyword (sm·md·lg·xl). */
163
162
  readonly size: _angular_core.InputSignalWithTransform<number, string | number>;
164
163
  /** Stroke width of the line icon. */
@@ -281,8 +280,8 @@ declare class SdsInput implements ControlValueAccessor {
281
280
  * translate it — it is an icon-only control, so this string is its only name.
282
281
  */
283
282
  readonly clearLabel: _angular_core.InputSignal<string>;
284
- readonly leadingIcon: _angular_core.InputSignal<"search" | "filter" | "chart-column" | "chart-line" | "chart-bar" | "chart-area" | "chart-pie" | "chart-scatter" | "grid-3x3" | "activity" | "gauge" | "trending-up" | "trending-down" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "file-check" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
285
- readonly trailingIcon: _angular_core.InputSignal<"search" | "filter" | "chart-column" | "chart-line" | "chart-bar" | "chart-area" | "chart-pie" | "chart-scatter" | "grid-3x3" | "activity" | "gauge" | "trending-up" | "trending-down" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "file-check" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
283
+ readonly leadingIcon: _angular_core.InputSignal<"chart-column" | "chart-line" | "chart-bar" | "chart-area" | "chart-pie" | "chart-scatter" | "grid-3x3" | "activity" | "gauge" | "trending-up" | "trending-down" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "search" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "filter" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "file-check" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
284
+ readonly trailingIcon: _angular_core.InputSignal<"chart-column" | "chart-line" | "chart-bar" | "chart-area" | "chart-pie" | "chart-scatter" | "grid-3x3" | "activity" | "gauge" | "trending-up" | "trending-down" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "search" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "filter" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "file-check" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
286
285
  /**
287
286
  * A CLICKABLE trailing icon, for the affordances that belong to the field itself — password reveal
288
287
  * above all. Distinct from {@link trailingIcon}, which is decorative and explicitly
@@ -292,7 +291,7 @@ declare class SdsInput implements ControlValueAccessor {
292
291
  * Always pair it with {@link trailingActionLabel} — an icon-only button with no accessible name is
293
292
  * unusable by a screen reader. For a toggle, also bind {@link trailingActionPressed}.
294
293
  */
295
- readonly trailingAction: _angular_core.InputSignal<"search" | "filter" | "chart-column" | "chart-line" | "chart-bar" | "chart-area" | "chart-pie" | "chart-scatter" | "grid-3x3" | "activity" | "gauge" | "trending-up" | "trending-down" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "file-check" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
294
+ readonly trailingAction: _angular_core.InputSignal<"chart-column" | "chart-line" | "chart-bar" | "chart-area" | "chart-pie" | "chart-scatter" | "grid-3x3" | "activity" | "gauge" | "trending-up" | "trending-down" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "search" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "filter" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "file-check" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
296
295
  /** Accessible name for {@link trailingAction}. Translate it in the consuming app. */
297
296
  readonly trailingActionLabel: _angular_core.InputSignal<string>;
298
297
  /** `aria-pressed` for a toggling action (e.g. show/hide password). Null renders no attribute. */
@@ -404,9 +403,9 @@ declare class SdsInputNumber implements ControlValueAccessor {
404
403
  readonly showButtons: _angular_core.InputSignalWithTransform<boolean, unknown>;
405
404
  readonly buttonLayout: _angular_core.InputSignal<SdsInputNumberButtonLayout>;
406
405
  /** Override the increment button icon (defaults: chevron-up when stacked, plus otherwise). */
407
- readonly incrementIcon: _angular_core.InputSignal<"search" | "filter" | "chart-column" | "chart-line" | "chart-bar" | "chart-area" | "chart-pie" | "chart-scatter" | "grid-3x3" | "activity" | "gauge" | "trending-up" | "trending-down" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "file-check" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
406
+ readonly incrementIcon: _angular_core.InputSignal<"chart-column" | "chart-line" | "chart-bar" | "chart-area" | "chart-pie" | "chart-scatter" | "grid-3x3" | "activity" | "gauge" | "trending-up" | "trending-down" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "search" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "filter" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "file-check" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
408
407
  /** Override the decrement button icon (defaults: chevron-down when stacked, minus otherwise). */
409
- readonly decrementIcon: _angular_core.InputSignal<"search" | "filter" | "chart-column" | "chart-line" | "chart-bar" | "chart-area" | "chart-pie" | "chart-scatter" | "grid-3x3" | "activity" | "gauge" | "trending-up" | "trending-down" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "file-check" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
408
+ readonly decrementIcon: _angular_core.InputSignal<"chart-column" | "chart-line" | "chart-bar" | "chart-area" | "chart-pie" | "chart-scatter" | "grid-3x3" | "activity" | "gauge" | "trending-up" | "trending-down" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "search" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "filter" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "file-check" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
410
409
  /** Allow an empty (null) value. When false, blurring an empty field falls back to {@link min} or 0. */
411
410
  readonly allowEmpty: _angular_core.InputSignalWithTransform<boolean, unknown>;
412
411
  readonly clearable: _angular_core.InputSignalWithTransform<boolean, unknown>;
@@ -423,8 +422,8 @@ declare class SdsInputNumber implements ControlValueAccessor {
423
422
  protected readonly isDisabled: _angular_core.Signal<boolean>;
424
423
  protected readonly describedBy: _angular_core.Signal<string | null>;
425
424
  protected readonly clearVisible: _angular_core.Signal<boolean>;
426
- protected readonly incrementIconName: _angular_core.Signal<"search" | "filter" | "chart-column" | "chart-line" | "chart-bar" | "chart-area" | "chart-pie" | "chart-scatter" | "grid-3x3" | "activity" | "gauge" | "trending-up" | "trending-down" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "file-check" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs">;
427
- protected readonly decrementIconName: _angular_core.Signal<"search" | "filter" | "chart-column" | "chart-line" | "chart-bar" | "chart-area" | "chart-pie" | "chart-scatter" | "grid-3x3" | "activity" | "gauge" | "trending-up" | "trending-down" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "file-check" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs">;
425
+ protected readonly incrementIconName: _angular_core.Signal<"chart-column" | "chart-line" | "chart-bar" | "chart-area" | "chart-pie" | "chart-scatter" | "grid-3x3" | "activity" | "gauge" | "trending-up" | "trending-down" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "search" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "filter" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "file-check" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs">;
426
+ protected readonly decrementIconName: _angular_core.Signal<"chart-column" | "chart-line" | "chart-bar" | "chart-area" | "chart-pie" | "chart-scatter" | "grid-3x3" | "activity" | "gauge" | "trending-up" | "trending-down" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "search" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "filter" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "file-check" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs">;
428
427
  protected readonly canIncrement: _angular_core.Signal<boolean>;
429
428
  protected readonly canDecrement: _angular_core.Signal<boolean>;
430
429
  /** Locale grouping/decimal separators, derived from Intl so parsing matches formatting. */
@@ -852,9 +851,9 @@ declare class SdsToggleSwitch implements ControlValueAccessor {
852
851
  /** Value emitted/stored when the switch is off. */
853
852
  readonly falseValue: _angular_core.InputSignal<unknown>;
854
853
  /** Icon shown on the knob when checked. */
855
- readonly onIcon: _angular_core.InputSignal<"search" | "filter" | "chart-column" | "chart-line" | "chart-bar" | "chart-area" | "chart-pie" | "chart-scatter" | "grid-3x3" | "activity" | "gauge" | "trending-up" | "trending-down" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "file-check" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
854
+ readonly onIcon: _angular_core.InputSignal<"chart-column" | "chart-line" | "chart-bar" | "chart-area" | "chart-pie" | "chart-scatter" | "grid-3x3" | "activity" | "gauge" | "trending-up" | "trending-down" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "search" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "filter" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "file-check" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
856
855
  /** Icon shown on the knob when unchecked. */
857
- readonly offIcon: _angular_core.InputSignal<"search" | "filter" | "chart-column" | "chart-line" | "chart-bar" | "chart-area" | "chart-pie" | "chart-scatter" | "grid-3x3" | "activity" | "gauge" | "trending-up" | "trending-down" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "file-check" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
856
+ readonly offIcon: _angular_core.InputSignal<"chart-column" | "chart-line" | "chart-bar" | "chart-area" | "chart-pie" | "chart-scatter" | "grid-3x3" | "activity" | "gauge" | "trending-up" | "trending-down" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "search" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "filter" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "file-check" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
858
857
  readonly hint: _angular_core.InputSignal<string>;
859
858
  readonly error: _angular_core.InputSignal<string>;
860
859
  /**
@@ -1033,7 +1032,7 @@ declare class SdsAvatar {
1033
1032
  * Icon shown instead of initials when there is no usable image (e.g. `utensils` or `image` for a dish).
1034
1033
  * Null (default) keeps the initials.
1035
1034
  */
1036
- readonly fallbackIcon: _angular_core.InputSignal<"search" | "filter" | "chart-column" | "chart-line" | "chart-bar" | "chart-area" | "chart-pie" | "chart-scatter" | "grid-3x3" | "activity" | "gauge" | "trending-up" | "trending-down" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "file-check" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
1035
+ readonly fallbackIcon: _angular_core.InputSignal<"chart-column" | "chart-line" | "chart-bar" | "chart-area" | "chart-pie" | "chart-scatter" | "grid-3x3" | "activity" | "gauge" | "trending-up" | "trending-down" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "search" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "filter" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "file-check" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
1037
1036
  /** Classes of the placeholder tile behind {@link fallbackIcon}: background and icon colour. */
1038
1037
  readonly placeholderClass: _angular_core.InputSignal<string>;
1039
1038
  /**
@@ -1120,7 +1119,7 @@ declare class SdsAllergenIcon {
1120
1119
  readonly size: _angular_core.InputSignal<string | number>;
1121
1120
  /** Stroke width of the line icon. */
1122
1121
  readonly strokeWidth: _angular_core.InputSignal<number>;
1123
- protected readonly iconName: _angular_core.Signal<"search" | "filter" | "chart-column" | "chart-line" | "chart-bar" | "chart-area" | "chart-pie" | "chart-scatter" | "grid-3x3" | "activity" | "gauge" | "trending-up" | "trending-down" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "file-check" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
1122
+ protected readonly iconName: _angular_core.Signal<"chart-column" | "chart-line" | "chart-bar" | "chart-area" | "chart-pie" | "chart-scatter" | "grid-3x3" | "activity" | "gauge" | "trending-up" | "trending-down" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "search" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "filter" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "file-check" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
1124
1123
  constructor();
1125
1124
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<SdsAllergenIcon, never>;
1126
1125
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<SdsAllergenIcon, "sds-allergen-icon", never, { "allergen": { "alias": "allergen"; "required": true; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "showTitle": { "alias": "showTitle"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "strokeWidth": { "alias": "strokeWidth"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
@@ -1154,7 +1153,7 @@ declare class SdsTriStateChip {
1154
1153
  /** Visible name (e.g. the allergen). Required — the chip has no other accessible name. */
1155
1154
  readonly label: _angular_core.InputSignal<string>;
1156
1155
  /** Optional leading registry icon, e.g. an `allergen-*` pictogram. */
1157
- readonly icon: _angular_core.InputSignal<"search" | "filter" | "chart-column" | "chart-line" | "chart-bar" | "chart-area" | "chart-pie" | "chart-scatter" | "grid-3x3" | "activity" | "gauge" | "trending-up" | "trending-down" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "file-check" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
1156
+ readonly icon: _angular_core.InputSignal<"chart-column" | "chart-line" | "chart-bar" | "chart-area" | "chart-pie" | "chart-scatter" | "grid-3x3" | "activity" | "gauge" | "trending-up" | "trending-down" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "search" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "filter" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "file-check" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
1158
1157
  readonly size: _angular_core.InputSignal<SdsTriStateChipSize>;
1159
1158
  readonly disabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
1160
1159
  /** Show the state as a small visible caption under the label. */
@@ -1271,7 +1270,7 @@ declare class SdsChip {
1271
1270
  readonly label: _angular_core.InputSignal<string>;
1272
1271
  /** On/off. Two-way: `[(selected)]`. */
1273
1272
  readonly selected: _angular_core.ModelSignal<boolean>;
1274
- readonly icon: _angular_core.InputSignal<"search" | "filter" | "chart-column" | "chart-line" | "chart-bar" | "chart-area" | "chart-pie" | "chart-scatter" | "grid-3x3" | "activity" | "gauge" | "trending-up" | "trending-down" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "file-check" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
1273
+ readonly icon: _angular_core.InputSignal<"chart-column" | "chart-line" | "chart-bar" | "chart-area" | "chart-pie" | "chart-scatter" | "grid-3x3" | "activity" | "gauge" | "trending-up" | "trending-down" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "search" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "filter" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "file-check" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
1275
1274
  readonly count: _angular_core.InputSignal<number | null | undefined>;
1276
1275
  readonly size: _angular_core.InputSignal<SdsChipSize>;
1277
1276
  readonly disabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
@@ -1583,7 +1582,7 @@ declare class SdsMenu implements OnDestroy {
1583
1582
  /** Accessible name of the built-in icon trigger (required when there is no [triggerText]). */
1584
1583
  readonly triggerLabel: _angular_core.InputSignal<string>;
1585
1584
  /** Icon of the built-in trigger. */
1586
- readonly triggerIcon: _angular_core.InputSignal<"search" | "filter" | "chart-column" | "chart-line" | "chart-bar" | "chart-area" | "chart-pie" | "chart-scatter" | "grid-3x3" | "activity" | "gauge" | "trending-up" | "trending-down" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "file-check" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs">;
1585
+ readonly triggerIcon: _angular_core.InputSignal<"chart-column" | "chart-line" | "chart-bar" | "chart-area" | "chart-pie" | "chart-scatter" | "grid-3x3" | "activity" | "gauge" | "trending-up" | "trending-down" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "search" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "filter" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "file-check" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs">;
1587
1586
  /** Optional visible text on the built-in trigger (then it is its name). */
1588
1587
  readonly triggerText: _angular_core.InputSignal<string>;
1589
1588
  /** Accessible name of the menu itself; defaults to the trigger's name. */
@@ -2441,7 +2440,7 @@ declare class SdsRangeCalendar {
2441
2440
  /** BCP 47 locale for month and weekday names. Defaults to `en-GB`; pass the app's locale. */
2442
2441
  readonly locale: _angular_core.InputSignal<string>;
2443
2442
  /** Months shown side by side (from the `sm` breakpoint; always one below it). */
2444
- readonly months: _angular_core.InputSignal<1 | 2>;
2443
+ readonly months: _angular_core.InputSignal<2 | 1>;
2445
2444
  /** Accessible name of the calendar group. English default — translate it in the app. */
2446
2445
  readonly calendarLabel: _angular_core.InputSignal<string>;
2447
2446
  /** Accessible name of the icon-only "previous month" button (its ONLY name — translate it). */
@@ -2539,7 +2538,7 @@ declare class SdsDateRangePicker implements OnDestroy {
2539
2538
  readonly size: _angular_core.InputSignal<SdsDateRangePickerSize>;
2540
2539
  readonly disabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
2541
2540
  /** Months side by side in the panel (from the `sm` breakpoint; always one below it). */
2542
- readonly months: _angular_core.InputSignal<1 | 2>;
2541
+ readonly months: _angular_core.InputSignal<2 | 1>;
2543
2542
  /**
2544
2543
  * Display formatter for the field. Default: `Intl.DateTimeFormat#formatRange` with day, short
2545
2544
  * month and year in {@link locale} (e.g. `1–7 Oct 2026`) — see `formatDateRange`.
@@ -3363,7 +3362,7 @@ declare class SdsAddressAutocomplete implements ControlValueAccessor, OnDestroy
3363
3362
  readonly appearance: _angular_core.InputSignal<SdsAddressAutocompleteAppearance>;
3364
3363
  readonly shape: _angular_core.InputSignal<SdsAddressAutocompleteShape>;
3365
3364
  /** Decorative icon at the start of the field; `null` for none. */
3366
- readonly leadingIcon: _angular_core.InputSignal<"search" | "filter" | "chart-column" | "chart-line" | "chart-bar" | "chart-area" | "chart-pie" | "chart-scatter" | "grid-3x3" | "activity" | "gauge" | "trending-up" | "trending-down" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "file-check" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
3365
+ readonly leadingIcon: _angular_core.InputSignal<"chart-column" | "chart-line" | "chart-bar" | "chart-area" | "chart-pie" | "chart-scatter" | "grid-3x3" | "activity" | "gauge" | "trending-up" | "trending-down" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "search" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "filter" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "file-check" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
3367
3366
  readonly useLocationText: _angular_core.InputSignal<string>;
3368
3367
  readonly locatingText: _angular_core.InputSignal<string>;
3369
3368
  readonly locateFailedText: _angular_core.InputSignal<string>;
@@ -3745,7 +3744,7 @@ declare class SdsTab implements OnInit, OnDestroy {
3745
3744
  readonly value: _angular_core.InputSignal<SdsTabValue>;
3746
3745
  readonly disabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
3747
3746
  /** An icon from the library registry, drawn before the label. */
3748
- readonly icon: _angular_core.InputSignal<"search" | "filter" | "chart-column" | "chart-line" | "chart-bar" | "chart-area" | "chart-pie" | "chart-scatter" | "grid-3x3" | "activity" | "gauge" | "trending-up" | "trending-down" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "file-check" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
3747
+ readonly icon: _angular_core.InputSignal<"chart-column" | "chart-line" | "chart-bar" | "chart-area" | "chart-pie" | "chart-scatter" | "grid-3x3" | "activity" | "gauge" | "trending-up" | "trending-down" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "search" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "filter" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "file-check" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
3749
3748
  /** A count badge after the label (`null` / unset: none; `0` is shown). */
3750
3749
  readonly count: _angular_core.InputSignal<string | number | null>;
3751
3750
  protected readonly active: _angular_core.Signal<boolean>;
@@ -4804,7 +4803,7 @@ declare class SdsNavGroup {
4804
4803
  /** Turn the label into an expand/collapse control. */
4805
4804
  readonly collapsible: _angular_core.InputSignalWithTransform<boolean, unknown>;
4806
4805
  /** Icon for a collapsible header, so it reads at the same weight as the items it sits among. */
4807
- readonly icon: _angular_core.InputSignal<"search" | "filter" | "chart-column" | "chart-line" | "chart-bar" | "chart-area" | "chart-pie" | "chart-scatter" | "grid-3x3" | "activity" | "gauge" | "trending-up" | "trending-down" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "file-check" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
4806
+ readonly icon: _angular_core.InputSignal<"chart-column" | "chart-line" | "chart-bar" | "chart-area" | "chart-pie" | "chart-scatter" | "grid-3x3" | "activity" | "gauge" | "trending-up" | "trending-down" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "search" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "filter" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "file-check" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
4808
4807
  /**
4809
4808
  * URL prefix owned by this group, e.g. `/payments`. While the active route starts with it the
4810
4809
  * group counts as active and opens itself — unless the person has explicitly toggled it since.
@@ -4869,7 +4868,7 @@ type SdsNavItemBadgeTone = 'brand' | 'danger' | 'neutral';
4869
4868
  */
4870
4869
  declare class SdsNavItem {
4871
4870
  protected readonly store: SidebarStore;
4872
- readonly icon: _angular_core.InputSignal<"search" | "filter" | "chart-column" | "chart-line" | "chart-bar" | "chart-area" | "chart-pie" | "chart-scatter" | "grid-3x3" | "activity" | "gauge" | "trending-up" | "trending-down" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "file-check" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
4871
+ readonly icon: _angular_core.InputSignal<"chart-column" | "chart-line" | "chart-bar" | "chart-area" | "chart-pie" | "chart-scatter" | "grid-3x3" | "activity" | "gauge" | "trending-up" | "trending-down" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "search" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "filter" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "file-check" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
4873
4872
  readonly label: _angular_core.InputSignal<string>;
4874
4873
  /** Router link target; when null, the item behaves as a button. */
4875
4874
  readonly link: _angular_core.InputSignal<string | unknown[] | null>;
@@ -4985,7 +4984,7 @@ type SdsMenuItemTone = 'default' | 'danger';
4985
4984
  * <sds-menu-item icon="log-out" label="Sign out" tone="danger" (select)="signOut()" />
4986
4985
  */
4987
4986
  declare class SdsMenuItem {
4988
- readonly icon: _angular_core.InputSignal<"search" | "filter" | "chart-column" | "chart-line" | "chart-bar" | "chart-area" | "chart-pie" | "chart-scatter" | "grid-3x3" | "activity" | "gauge" | "trending-up" | "trending-down" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "file-check" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
4987
+ readonly icon: _angular_core.InputSignal<"chart-column" | "chart-line" | "chart-bar" | "chart-area" | "chart-pie" | "chart-scatter" | "grid-3x3" | "activity" | "gauge" | "trending-up" | "trending-down" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "search" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "filter" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "file-check" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
4989
4988
  readonly label: _angular_core.InputSignal<string>;
4990
4989
  /** Router link target for an in-app route; when null (default) the item is not a Router link. */
4991
4990
  readonly link: _angular_core.InputSignal<string | unknown[] | null>;
@@ -5241,105 +5240,6 @@ declare class SdsEnvBanner {
5241
5240
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<SdsEnvBanner, "sds-env-banner", never, { "env": { "alias": "env"; "required": false; "isSignal": true; }; "devSrLabel": { "alias": "devSrLabel"; "required": false; "isSignal": true; }; "testSrLabel": { "alias": "testSrLabel"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
5242
5241
  }
5243
5242
 
5244
- /** A value the x / category axis can carry. ISO date strings (`2026-03-01`) are read as dates. */
5245
- type SdsXValue = string | number | Date;
5246
- /**
5247
- * How a chart reads a field from a row: either the property name, or a function. The function form
5248
- * covers derived values (`row => row.cost / row.units`) and nested data (`row => row.stats.total`).
5249
- */
5250
- type SdsAccessor<T, R> = (keyof T & string) | ((row: T, index: number) => R);
5251
- /** A number format: `Intl.NumberFormatOptions` (locale-aware, the default) or your own function. */
5252
- type SdsNumberFormat = Intl.NumberFormatOptions | ((value: number) => string);
5253
- /**
5254
- * An x-axis format. Options objects are interpreted from the axis kind: `Intl.DateTimeFormatOptions`
5255
- * on a time axis, `Intl.NumberFormatOptions` on a numeric one. Category axes print the value as-is
5256
- * unless a function is given.
5257
- */
5258
- type SdsXFormat = Intl.DateTimeFormatOptions | Intl.NumberFormatOptions | ((value: SdsXValue) => string);
5259
- /** What the x axis is. `auto` infers it from the data: Date / ISO string → time, number → linear. */
5260
- type SdsChartXType = 'auto' | 'time' | 'linear' | 'category';
5261
- /** Value-axis scale. `log` needs strictly positive values (non-positive points are dropped). */
5262
- type SdsChartScale = 'linear' | 'log';
5263
- /**
5264
- * Where the legend sits. `auto` picks the chart's natural place (top for two or more series, none for
5265
- * one; right for a donut). `right` falls back to below on narrow containers.
5266
- */
5267
- type SdsChartLegend = 'auto' | 'top' | 'bottom' | 'right' | 'none';
5268
- /** Which gridlines to draw. They are always solid hairlines, never dashed. */
5269
- type SdsChartGrid = 'y' | 'x' | 'both' | 'none';
5270
- /** Stacking: `stacked` piles the series, `percent` normalises every stack to 100 %. */
5271
- type SdsChartStack = 'none' | 'stacked' | 'percent';
5272
- /** Semantic tone for annotations and single-colour charts. */
5273
- type SdsChartTone = 'neutral' | 'brand' | 'success' | 'warning' | 'danger';
5274
- /** One plotted measure. `key` is both the row property it reads and the series' identity. */
5275
- interface SdsChartSeries<T = any> {
5276
- /** Row property holding the value — and the stable id used for colour, legend and toggling. */
5277
- key: string;
5278
- /** Human label (legend, tooltip, table header). Defaults to `key`. */
5279
- label?: string;
5280
- /** Read the value with a function instead of `row[key]` (derived or nested values). */
5281
- value?: (row: T, index: number) => number | null | undefined;
5282
- /** Any CSS colour, including `var(--token)`. Defaults to the categorical slot of its index. */
5283
- color?: string;
5284
- /** Per-series value format (tooltip, labels, table). Falls back to the chart's `valueFormat`. */
5285
- format?: SdsNumberFormat;
5286
- /** Line charts: draw dashed — a forecast, a target or a projection. */
5287
- dashed?: boolean;
5288
- /** Bar charts: draw this series as a line over the bars (a combo chart, on the SAME axis). */
5289
- type?: 'bar' | 'line';
5290
- }
5291
- /** A horizontal/vertical reference line — a target, a threshold, a mean. */
5292
- interface SdsChartReferenceLine {
5293
- type: 'line';
5294
- /** `y` (default) draws across the plot at a value; `x` draws down it at an x position. */
5295
- axis?: 'x' | 'y';
5296
- value: SdsXValue;
5297
- label?: string;
5298
- tone?: SdsChartTone;
5299
- }
5300
- /** A shaded range — a normal range, a target zone, a holiday period. */
5301
- interface SdsChartReferenceBand {
5302
- type: 'band';
5303
- axis?: 'x' | 'y';
5304
- from: SdsXValue;
5305
- to: SdsXValue;
5306
- label?: string;
5307
- tone?: SdsChartTone;
5308
- }
5309
- type SdsChartAnnotation = SdsChartReferenceLine | SdsChartReferenceBand;
5310
- /** One line of the tooltip. `value` is already formatted; `raw` is the number behind it. */
5311
- interface SdsChartTooltipRow {
5312
- key: string;
5313
- label: string;
5314
- value: string;
5315
- raw: number | null;
5316
- color: string;
5317
- /** Shape of the key glyph: a short line for lines, a square for bars/areas/slices, a dot for points. */
5318
- shape: 'line' | 'rect' | 'dot';
5319
- }
5320
- /** Context handed to a custom `<ng-template sdsChartTooltip let-tip>` template. */
5321
- interface SdsChartTooltipContext<T = any> {
5322
- /** Formatted heading (the x value, the category, the slice…). */
5323
- title: string;
5324
- rows: SdsChartTooltipRow[];
5325
- /** Optional footer line (a total, a share…). */
5326
- footer?: string;
5327
- /** The source row(s) behind the hovered position. */
5328
- data: T[];
5329
- index: number;
5330
- }
5331
- /** Emitted when a mark is clicked (or activated with Enter on the keyboard). */
5332
- interface SdsChartPointEvent<T = any> {
5333
- /** Series key — or the slice / cell / node id on charts without series. */
5334
- key: string;
5335
- /** The source row (null when the mark aggregates several rows, e.g. the "Other" slice). */
5336
- row: T | null;
5337
- index: number;
5338
- value: number | null;
5339
- x?: SdsXValue;
5340
- /** The row dimension (heatmap). */
5341
- y?: SdsXValue;
5342
- }
5343
5243
  /** Direction of a KPI change. */
5344
5244
  type SdsTrendDirection = 'up' | 'down' | 'flat';
5345
5245
  /** What `SdsChartLabels.kpiChange` receives to build the KPI's spoken change sentence. */
@@ -5468,1155 +5368,5 @@ declare const SDS_CHART_CONFIG: InjectionToken<SdsChartConfig>;
5468
5368
  */
5469
5369
  declare function provideSdsCharts(config: SdsChartConfig): Provider;
5470
5370
 
5471
- /**
5472
- * Replace a chart's default tooltip body with your own markup. The template receives the hovered
5473
- * position as `$implicit` ({ title, rows, footer, data, index }) — `data` holds the source rows, so the
5474
- * tooltip can show fields the chart does not plot (a comment, a status, a unit).
5475
- *
5476
- * Works on line, bar, scatter, donut, heatmap and treemap charts (not the sparkline). The chart still
5477
- * positions, flips and clamps the box; you style the body. The box is visual and pointer-transparent:
5478
- * never put links or buttons in it, and keep anything essential in the plotted data too — keyboard and
5479
- * screen-reader users get the default rows through the live region and the table twin.
5480
- *
5481
- * @example
5482
- * <sds-line-chart [data]="rows" x="day" [series]="series">
5483
- * <ng-template sdsChartTooltip let-tip>
5484
- * <p class="font-semibold">{{ tip.title }}</p>
5485
- * <p>{{ tip.data[0].comment }}</p>
5486
- * </ng-template>
5487
- * </sds-line-chart>
5488
- */
5489
- declare class SdsChartTooltip {
5490
- readonly template: TemplateRef<{
5491
- $implicit: SdsChartTooltipContext;
5492
- }>;
5493
- static ngTemplateContextGuard(_dir: SdsChartTooltip, ctx: unknown): ctx is {
5494
- $implicit: SdsChartTooltipContext;
5495
- };
5496
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<SdsChartTooltip, never>;
5497
- static ɵdir: _angular_core.ɵɵDirectiveDeclaration<SdsChartTooltip, "ng-template[sdsChartTooltip]", never, {}, {}, never, never, true, never>;
5498
- }
5499
-
5500
- interface PlotRect {
5501
- left: number;
5502
- top: number;
5503
- width: number;
5504
- height: number;
5505
- }
5506
- interface AxisTick {
5507
- pos: number;
5508
- label: string;
5509
- }
5510
- interface ResolvedAnnotation {
5511
- kind: 'line' | 'band';
5512
- x1: number;
5513
- y1: number;
5514
- x2: number;
5515
- y2: number;
5516
- label: string;
5517
- color: string;
5518
- labelX: number;
5519
- labelY: number;
5520
- anchor: 'start' | 'middle' | 'end';
5521
- }
5522
-
5523
- interface LegendItem {
5524
- key: string;
5525
- label: string;
5526
- color: string;
5527
- shape: 'line' | 'rect' | 'dot';
5528
- /** Optional trailing text — a value or a share (the donut's direct labels). */
5529
- detail?: string;
5530
- dashed?: boolean;
5531
- }
5532
- interface ChartTable {
5533
- columns: string[];
5534
- rows: string[][];
5535
- }
5536
-
5537
- /** Line interpolation. `monotone` (default) is smooth but never overshoots the data. */
5538
- type SdsLineCurve = 'linear' | 'monotone' | 'step' | 'natural';
5539
- /** Point markers: `auto` = every point on sparse plain lines (≤ 16), only the last on dense lines and plain areas, none on stacks. */
5540
- type SdsLineMarkers = 'auto' | 'all' | 'last' | 'none';
5541
- interface Point<T> {
5542
- row: T;
5543
- index: number;
5544
- x: SdsXValue;
5545
- key: string;
5546
- }
5547
- /** [x, y, y0] in pixels; undefined where the value is missing (the line breaks there). */
5548
- type P3 = readonly number[];
5549
- /**
5550
- * Line and area chart for anything over an ordered axis — time series, numeric x, or categories.
5551
- * Multi-series, stacked or 100 % areas, smooth / step curves, log scale, reference lines and bands,
5552
- * dashed forecast series, a crosshair tooltip listing every series, legend toggling, keyboard
5553
- * navigation and a data-table twin. Rows are read with accessors, so API data plots as-is.
5554
- *
5555
- * @example
5556
- * <sds-line-chart
5557
- * heading="Admissions"
5558
- * [data]="rows"
5559
- * x="date"
5560
- * [series]="[{ key: 'urgences', label: 'Urgences' }, { key: 'programmees', label: 'Programmées' }]"
5561
- * />
5562
- */
5563
- declare class SdsLineChart<T = any> {
5564
- /** The rows to plot — any shape; fields are read through `x` and each series' `key` / `value`. */
5565
- readonly data: _angular_core.InputSignal<readonly T[] | null | undefined>;
5566
- /** The x field: a property name or `(row, i) => value`. Dates, ISO strings, numbers or labels. */
5567
- readonly x: _angular_core.InputSignal<SdsAccessor<T, SdsXValue>>;
5568
- /** The measures to draw. A series keeps its colour slot (its index here) even when hidden. */
5569
- readonly series: _angular_core.InputSignal<readonly SdsChartSeries<T>[]>;
5570
- /** Force the x-axis kind instead of inferring it from the data. */
5571
- readonly xType: _angular_core.InputSignal<SdsChartXType>;
5572
- readonly heading: _angular_core.InputSignal<string>;
5573
- readonly subtitle: _angular_core.InputSignal<string>;
5574
- /** Plot height in px, axis labels included (the chart never scrolls inside itself). */
5575
- readonly height: _angular_core.InputSignalWithTransform<number, unknown>;
5576
- readonly curve: _angular_core.InputSignal<SdsLineCurve>;
5577
- /** Fill under each line with a soft wash of its colour. */
5578
- readonly area: _angular_core.InputSignalWithTransform<boolean, unknown>;
5579
- /** Stack the series as areas (`stacked`) or as shares of 100 % (`percent`). */
5580
- readonly stack: _angular_core.InputSignal<SdsChartStack>;
5581
- readonly markers: _angular_core.InputSignal<SdsLineMarkers>;
5582
- /** Label each line at its last point; converging labels spread apart with leader lines (dropped if they cannot fit). */
5583
- readonly endLabels: _angular_core.InputSignalWithTransform<boolean, unknown>;
5584
- readonly grid: _angular_core.InputSignal<SdsChartGrid>;
5585
- readonly legend: _angular_core.InputSignal<SdsChartLegend>;
5586
- /** Emphasise one series: the others fade back. */
5587
- readonly highlight: _angular_core.InputSignal<string | null>;
5588
- readonly annotations: _angular_core.InputSignal<readonly SdsChartAnnotation[]>;
5589
- readonly yScale: _angular_core.InputSignal<SdsChartScale>;
5590
- readonly yMin: _angular_core.InputSignal<number | null>;
5591
- readonly yMax: _angular_core.InputSignal<number | null>;
5592
- /** Start the value axis at zero. Defaults to true for areas/stacks, false for plain lines. */
5593
- readonly includeZero: _angular_core.InputSignal<boolean | null>;
5594
- /** Format of values in the tooltip, labels and table. Axis ticks derive a compact version. */
5595
- readonly valueFormat: _angular_core.InputSignal<SdsNumberFormat | null>;
5596
- /** Override the value-axis tick format. */
5597
- readonly axisFormat: _angular_core.InputSignal<SdsNumberFormat | null>;
5598
- /** Format of x values (ticks + tooltip heading). Time axes pick a sensible multi-scale default. */
5599
- readonly xFormat: _angular_core.InputSignal<SdsXFormat | null>;
5600
- readonly xLabel: _angular_core.InputSignal<string>;
5601
- readonly yLabel: _angular_core.InputSignal<string>;
5602
- /** BCP-47 locale for numbers and dates. Defaults to provideSdsCharts() / LOCALE_ID. */
5603
- readonly locale: _angular_core.InputSignal<string | null>;
5604
- readonly tooltip: _angular_core.InputSignalWithTransform<boolean, unknown>;
5605
- readonly animate: _angular_core.InputSignalWithTransform<boolean, unknown>;
5606
- /** Hold the current render at reduced opacity while new data loads (no skeleton flash). */
5607
- readonly loading: _angular_core.InputSignalWithTransform<boolean, unknown>;
5608
- /** Empty-state text. Default (`null`): the configured `labels.empty` ("No data to display"). */
5609
- readonly emptyText: _angular_core.InputSignal<string | null>;
5610
- /** Show a button that swaps the plot for its data table. */
5611
- readonly tableToggle: _angular_core.InputSignalWithTransform<boolean, unknown>;
5612
- readonly ariaLabel: _angular_core.InputSignal<string | null>;
5613
- /** Keys of the series currently hidden (legend toggles write it back — two-way bindable). */
5614
- readonly hidden: _angular_core.ModelSignal<readonly string[]>;
5615
- /** A point was clicked (the series nearest the pointer) or activated with Enter. */
5616
- readonly pointClick: _angular_core.OutputEmitterRef<SdsChartPointEvent<T>>;
5617
- protected readonly customTooltip: _angular_core.Signal<SdsChartTooltip | undefined>;
5618
- protected readonly uid: string;
5619
- protected readonly legendFocus: _angular_core.WritableSignal<string | null>;
5620
- protected readonly active: _angular_core.WritableSignal<number | null>;
5621
- protected readonly keyboard: _angular_core.WritableSignal<boolean>;
5622
- /** Leaving the chart dismisses a keyboard-driven readout (a pointer one clears on pointerleave). */
5623
- protected onBlur(): void;
5624
- private readonly pointerY;
5625
- private readonly width;
5626
- private readonly loc;
5627
- /** Built-in strings (provideSdsCharts labels over the English defaults). */
5628
- protected readonly text: _angular_core.Signal<_besaitech_ng_design_system.SdsChartLabels>;
5629
- private readonly animates;
5630
- private readonly palette;
5631
- protected readonly stacked: _angular_core.Signal<boolean>;
5632
- private readonly model;
5633
- private readonly allSeries;
5634
- private readonly visible;
5635
- /** Raw values per series, aligned with the sorted points (null = missing → a gap). */
5636
- private readonly values;
5637
- /** [y0, y1] per series and point — stacked offsets, or a baseline of 0 for plain lines. */
5638
- private readonly bands;
5639
- protected readonly isEmpty: _angular_core.Signal<boolean>;
5640
- /** Axis formatter at a given precision (uniqueLabels raises it until ticks stop repeating). */
5641
- private readonly axisMaker;
5642
- private readonly fmtX;
5643
- protected readonly layout: _angular_core.Signal<{
5644
- width: number;
5645
- height: number;
5646
- plot: PlotRect;
5647
- y: d3_scale.ScaleLinear<number, number, never>;
5648
- xPos: (p: Point<T>) => number;
5649
- mapX: (v: SdsXValue) => number | null;
5650
- xTicks: AxisTick[];
5651
- yTicks: AxisTick[];
5652
- baseline: number;
5653
- baseY: number;
5654
- } | null>;
5655
- private timeTicks;
5656
- private readonly target;
5657
- /** Boolean, so a resize (width A → B) never counts as a data change: resizes snap, data animates. */
5658
- private readonly ready;
5659
- private readonly version;
5660
- private readonly geometry;
5661
- protected readonly drawn: _angular_core.Signal<{
5662
- key: string;
5663
- color: string;
5664
- dashed: boolean;
5665
- dim: boolean;
5666
- line: string;
5667
- area: string | null;
5668
- markers: P3[];
5669
- }[]>;
5670
- protected readonly annotationsPx: _angular_core.Signal<ResolvedAnnotation[]>;
5671
- /**
5672
- * End labels. Where lines converge the labels are spread apart (never stacked on each other) and a
5673
- * hairline leader ties each displaced label back to its line end. If they cannot all fit in the plot
5674
- * height the set is dropped — the legend then carries identity.
5675
- */
5676
- protected readonly endLabelsPx: _angular_core.Signal<{
5677
- tx: number;
5678
- leader: boolean;
5679
- key: string;
5680
- label: string;
5681
- x: number;
5682
- anchorY: number;
5683
- y: number;
5684
- dim: boolean;
5685
- }[]>;
5686
- protected readonly activePx: _angular_core.Signal<{
5687
- x: number;
5688
- dots: {
5689
- key: string;
5690
- y: number;
5691
- color: string;
5692
- }[];
5693
- } | null>;
5694
- protected readonly tooltipY: _angular_core.Signal<number>;
5695
- protected readonly tooltipCtx: _angular_core.Signal<SdsChartTooltipContext<T> | null>;
5696
- protected readonly liveText: _angular_core.Signal<string>;
5697
- protected onPointer(event: PointerEvent): void;
5698
- private nearestIndex;
5699
- protected onClick(): void;
5700
- protected onKey(event: KeyboardEvent): void;
5701
- protected toggleSeries(key: string): void;
5702
- protected readonly legendPosition: _angular_core.Signal<"none" | "top" | "bottom" | "right">;
5703
- protected readonly legendItems: _angular_core.Signal<LegendItem[]>;
5704
- protected readonly label: _angular_core.Signal<string>;
5705
- protected readonly table: _angular_core.Signal<ChartTable>;
5706
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<SdsLineChart<any>, never>;
5707
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<SdsLineChart<any>, "sds-line-chart", never, { "data": { "alias": "data"; "required": false; "isSignal": true; }; "x": { "alias": "x"; "required": true; "isSignal": true; }; "series": { "alias": "series"; "required": true; "isSignal": true; }; "xType": { "alias": "xType"; "required": false; "isSignal": true; }; "heading": { "alias": "heading"; "required": false; "isSignal": true; }; "subtitle": { "alias": "subtitle"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; "curve": { "alias": "curve"; "required": false; "isSignal": true; }; "area": { "alias": "area"; "required": false; "isSignal": true; }; "stack": { "alias": "stack"; "required": false; "isSignal": true; }; "markers": { "alias": "markers"; "required": false; "isSignal": true; }; "endLabels": { "alias": "endLabels"; "required": false; "isSignal": true; }; "grid": { "alias": "grid"; "required": false; "isSignal": true; }; "legend": { "alias": "legend"; "required": false; "isSignal": true; }; "highlight": { "alias": "highlight"; "required": false; "isSignal": true; }; "annotations": { "alias": "annotations"; "required": false; "isSignal": true; }; "yScale": { "alias": "yScale"; "required": false; "isSignal": true; }; "yMin": { "alias": "yMin"; "required": false; "isSignal": true; }; "yMax": { "alias": "yMax"; "required": false; "isSignal": true; }; "includeZero": { "alias": "includeZero"; "required": false; "isSignal": true; }; "valueFormat": { "alias": "valueFormat"; "required": false; "isSignal": true; }; "axisFormat": { "alias": "axisFormat"; "required": false; "isSignal": true; }; "xFormat": { "alias": "xFormat"; "required": false; "isSignal": true; }; "xLabel": { "alias": "xLabel"; "required": false; "isSignal": true; }; "yLabel": { "alias": "yLabel"; "required": false; "isSignal": true; }; "locale": { "alias": "locale"; "required": false; "isSignal": true; }; "tooltip": { "alias": "tooltip"; "required": false; "isSignal": true; }; "animate": { "alias": "animate"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "emptyText": { "alias": "emptyText"; "required": false; "isSignal": true; }; "tableToggle": { "alias": "tableToggle"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "hidden": { "alias": "hidden"; "required": false; "isSignal": true; }; }, { "hidden": "hiddenChange"; "pointClick": "pointClick"; }, ["customTooltip"], never, true, never>;
5708
- }
5709
-
5710
- /** `vertical` = columns rising from the category axis; `horizontal` = bars (best for long labels / rankings). */
5711
- type SdsBarOrientation = 'vertical' | 'horizontal';
5712
- /** Order the categories by their total. `none` keeps the data order. */
5713
- type SdsBarSort = 'none' | 'asc' | 'desc';
5714
- /**
5715
- * Bar and column chart for comparing categories: grouped, stacked or 100 % stacked, vertical or
5716
- * horizontal, with negative values, value labels that are only drawn where they fit, sorting,
5717
- * per-bar colours, a combo `type: 'line'` series on the same axis, reference lines (targets) and a
5718
- * per-category tooltip listing every series. Bars are capped in thickness, rounded on their data end
5719
- * only, and separated by a 2 px surface gap — never outlined.
5720
- *
5721
- * @example
5722
- * <sds-bar-chart
5723
- * heading="Séjours par service"
5724
- * [data]="rows"
5725
- * x="mois"
5726
- * [series]="[{ key: 'cardio', label: 'Cardiologie' }, { key: 'neuro', label: 'Neurologie' }]"
5727
- * stack="stacked"
5728
- * />
5729
- */
5730
- declare class SdsBarChart<T = any> {
5731
- readonly data: _angular_core.InputSignal<readonly T[] | null | undefined>;
5732
- /** The category field: a property name or `(row, i) => value`. */
5733
- readonly x: _angular_core.InputSignal<SdsAccessor<T, SdsXValue>>;
5734
- /** The measures. A `type: 'line'` series is drawn as a line over the bars (vertical only). */
5735
- readonly series: _angular_core.InputSignal<readonly SdsChartSeries<T>[]>;
5736
- readonly heading: _angular_core.InputSignal<string>;
5737
- readonly subtitle: _angular_core.InputSignal<string>;
5738
- readonly orientation: _angular_core.InputSignal<SdsBarOrientation>;
5739
- readonly stack: _angular_core.InputSignal<SdsChartStack>;
5740
- /** Height in px, axes included. Defaults to 300 (vertical) or one row per category (horizontal). */
5741
- readonly height: _angular_core.InputSignalWithTransform<number | null, unknown>;
5742
- /** Maximum bar thickness in px — bars never fill their slot; the leftover is air. */
5743
- readonly maxBarSize: _angular_core.InputSignalWithTransform<number, unknown>;
5744
- /** Corner radius of the bar's data end (its baseline end stays square). */
5745
- readonly radius: _angular_core.InputSignalWithTransform<number, unknown>;
5746
- /** Print each bar's value at its tip (each stack's total when stacked) — only where it fits. */
5747
- readonly showValues: _angular_core.InputSignalWithTransform<boolean, unknown>;
5748
- readonly sort: _angular_core.InputSignal<SdsBarSort>;
5749
- /** Emphasise some categories (their x values): the other bars fade back. (Series emphasis: hover the legend.) */
5750
- readonly highlightCategories: _angular_core.InputSignal<SdsXValue | readonly SdsXValue[] | null>;
5751
- /** Colour one bar from its data — e.g. negatives in red, or a status. Return null to keep the series colour. */
5752
- readonly barColor: _angular_core.InputSignal<((row: T, seriesKey: string, value: number) => string | null | undefined) | null>;
5753
- readonly grid: _angular_core.InputSignal<SdsChartGrid | null>;
5754
- readonly legend: _angular_core.InputSignal<SdsChartLegend>;
5755
- /** Reference lines / bands. `axis: 'y'` (default) is the VALUE axis in both orientations. */
5756
- readonly annotations: _angular_core.InputSignal<readonly SdsChartAnnotation[]>;
5757
- readonly yMin: _angular_core.InputSignal<number | null>;
5758
- readonly yMax: _angular_core.InputSignal<number | null>;
5759
- readonly valueFormat: _angular_core.InputSignal<SdsNumberFormat | null>;
5760
- readonly axisFormat: _angular_core.InputSignal<SdsNumberFormat | null>;
5761
- /** Format of the category labels (dates are formatted at their granularity by default). */
5762
- readonly xFormat: _angular_core.InputSignal<SdsXFormat | null>;
5763
- readonly xLabel: _angular_core.InputSignal<string>;
5764
- readonly yLabel: _angular_core.InputSignal<string>;
5765
- readonly locale: _angular_core.InputSignal<string | null>;
5766
- readonly tooltip: _angular_core.InputSignalWithTransform<boolean, unknown>;
5767
- readonly animate: _angular_core.InputSignalWithTransform<boolean, unknown>;
5768
- readonly loading: _angular_core.InputSignalWithTransform<boolean, unknown>;
5769
- /** Empty-state text. Default (`null`): the configured `labels.empty` ("No data to display"). */
5770
- readonly emptyText: _angular_core.InputSignal<string | null>;
5771
- readonly tableToggle: _angular_core.InputSignalWithTransform<boolean, unknown>;
5772
- readonly ariaLabel: _angular_core.InputSignal<string | null>;
5773
- readonly hidden: _angular_core.ModelSignal<readonly string[]>;
5774
- /** A bar (or a category, from the keyboard) was clicked. */
5775
- readonly pointClick: _angular_core.OutputEmitterRef<SdsChartPointEvent<T>>;
5776
- protected readonly customTooltip: _angular_core.Signal<SdsChartTooltip | undefined>;
5777
- protected readonly legendFocus: _angular_core.WritableSignal<string | null>;
5778
- protected readonly active: _angular_core.WritableSignal<number | null>;
5779
- protected readonly keyboard: _angular_core.WritableSignal<boolean>;
5780
- /** Leaving the chart dismisses a keyboard-driven readout (a pointer one clears on pointerleave). */
5781
- protected onBlur(): void;
5782
- private readonly pointer;
5783
- private readonly width;
5784
- private readonly loc;
5785
- /** Built-in strings (provideSdsCharts labels over the English defaults). */
5786
- protected readonly text: _angular_core.Signal<_besaitech_ng_design_system.SdsChartLabels>;
5787
- private readonly animates;
5788
- private readonly palette;
5789
- private readonly horizontal;
5790
- private readonly stacked;
5791
- private readonly allSeries;
5792
- private readonly visible;
5793
- private readonly barSeries;
5794
- private readonly lineSeries;
5795
- private readonly raw;
5796
- private readonly rawValues;
5797
- /** Categories in display order (sorted by total of the visible bar series when asked). */
5798
- private readonly order;
5799
- /** [v0, v1] per bar series per category (value space). */
5800
- private readonly extents;
5801
- protected readonly isEmpty: _angular_core.Signal<boolean>;
5802
- private readonly axisMaker;
5803
- private readonly fmtCat;
5804
- /** Bars-per-group (1 when stacked) — drives row height for auto-sized horizontal charts. */
5805
- private readonly groupCount;
5806
- protected readonly resolvedHeight: _angular_core.Signal<number>;
5807
- protected readonly layout: _angular_core.Signal<{
5808
- readonly width: number;
5809
- readonly height: number;
5810
- readonly horizontal: boolean;
5811
- readonly plot: PlotRect;
5812
- readonly value: d3_scale.ScaleLinear<number, number, never>;
5813
- readonly band: d3_scale.ScaleBand<number>;
5814
- readonly bw: number;
5815
- readonly barSize: number;
5816
- readonly groupSize: number;
5817
- readonly base: number;
5818
- readonly grid: SdsChartGrid;
5819
- readonly xTicks: AxisTick[];
5820
- readonly yTicks: AxisTick[];
5821
- } | null>;
5822
- /** Formatted values that may be printed as labels (for margin sizing). */
5823
- private readonly labelTexts;
5824
- /** Target pixel geometry per bar / line point, plus the non-animated facts about each bar. */
5825
- private readonly targetModel;
5826
- private readonly target;
5827
- private readonly meta;
5828
- /** Boolean, so a resize (width A → B) never counts as a data change: resizes snap, data animates. */
5829
- private readonly ready;
5830
- private readonly version;
5831
- private readonly geometry;
5832
- private readonly highlightSet;
5833
- protected readonly bars: _angular_core.Signal<{
5834
- id: string;
5835
- d: string;
5836
- color: string;
5837
- dim: boolean;
5838
- }[]>;
5839
- protected readonly lines: _angular_core.Signal<{
5840
- key: string;
5841
- color: string;
5842
- dashed: boolean;
5843
- dim: boolean;
5844
- d: string;
5845
- points: (readonly number[])[];
5846
- }[]>;
5847
- /** Value labels at the bar tips — dropped wherever they would not fit or would collide. */
5848
- protected readonly valueLabels: _angular_core.Signal<{
5849
- id: string;
5850
- x: number;
5851
- y: number;
5852
- text: string;
5853
- anchor: "start" | "middle" | "end";
5854
- }[]>;
5855
- protected readonly annotationsPx: _angular_core.Signal<ResolvedAnnotation[]>;
5856
- /** One hit target per category — the whole band step, bigger than any bar in it. */
5857
- protected readonly hits: _angular_core.Signal<{
5858
- index: number;
5859
- x: number;
5860
- y: number;
5861
- w: number;
5862
- h: number;
5863
- }[]>;
5864
- protected readonly hoverBand: _angular_core.Signal<{
5865
- x: number;
5866
- y: number;
5867
- w: number;
5868
- h: number;
5869
- } | null>;
5870
- protected readonly tooltipAt: _angular_core.Signal<{
5871
- x: number;
5872
- y: number;
5873
- }>;
5874
- protected readonly tooltipCtx: _angular_core.Signal<SdsChartTooltipContext<T> | null>;
5875
- protected readonly liveText: _angular_core.Signal<string>;
5876
- private local;
5877
- protected enter(index: number, event: PointerEvent): void;
5878
- protected move(event: PointerEvent): void;
5879
- protected onClick(index: number, event?: MouseEvent): void;
5880
- protected onKey(event: KeyboardEvent): void;
5881
- protected toggleSeries(key: string): void;
5882
- protected readonly legendPosition: _angular_core.Signal<"none" | "top" | "bottom" | "right">;
5883
- protected readonly legendItems: _angular_core.Signal<LegendItem[]>;
5884
- protected readonly label: _angular_core.Signal<string>;
5885
- protected readonly table: _angular_core.Signal<ChartTable>;
5886
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<SdsBarChart<any>, never>;
5887
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<SdsBarChart<any>, "sds-bar-chart", never, { "data": { "alias": "data"; "required": false; "isSignal": true; }; "x": { "alias": "x"; "required": true; "isSignal": true; }; "series": { "alias": "series"; "required": true; "isSignal": true; }; "heading": { "alias": "heading"; "required": false; "isSignal": true; }; "subtitle": { "alias": "subtitle"; "required": false; "isSignal": true; }; "orientation": { "alias": "orientation"; "required": false; "isSignal": true; }; "stack": { "alias": "stack"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; "maxBarSize": { "alias": "maxBarSize"; "required": false; "isSignal": true; }; "radius": { "alias": "radius"; "required": false; "isSignal": true; }; "showValues": { "alias": "showValues"; "required": false; "isSignal": true; }; "sort": { "alias": "sort"; "required": false; "isSignal": true; }; "highlightCategories": { "alias": "highlightCategories"; "required": false; "isSignal": true; }; "barColor": { "alias": "barColor"; "required": false; "isSignal": true; }; "grid": { "alias": "grid"; "required": false; "isSignal": true; }; "legend": { "alias": "legend"; "required": false; "isSignal": true; }; "annotations": { "alias": "annotations"; "required": false; "isSignal": true; }; "yMin": { "alias": "yMin"; "required": false; "isSignal": true; }; "yMax": { "alias": "yMax"; "required": false; "isSignal": true; }; "valueFormat": { "alias": "valueFormat"; "required": false; "isSignal": true; }; "axisFormat": { "alias": "axisFormat"; "required": false; "isSignal": true; }; "xFormat": { "alias": "xFormat"; "required": false; "isSignal": true; }; "xLabel": { "alias": "xLabel"; "required": false; "isSignal": true; }; "yLabel": { "alias": "yLabel"; "required": false; "isSignal": true; }; "locale": { "alias": "locale"; "required": false; "isSignal": true; }; "tooltip": { "alias": "tooltip"; "required": false; "isSignal": true; }; "animate": { "alias": "animate"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "emptyText": { "alias": "emptyText"; "required": false; "isSignal": true; }; "tableToggle": { "alias": "tableToggle"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "hidden": { "alias": "hidden"; "required": false; "isSignal": true; }; }, { "hidden": "hiddenChange"; "pointClick": "pointClick"; }, ["customTooltip"], never, true, never>;
5888
- }
5889
-
5890
- interface Dot<T> {
5891
- row: T;
5892
- index: number;
5893
- id: string;
5894
- x: number;
5895
- xDate: boolean;
5896
- y: number;
5897
- size: number | null;
5898
- group: string;
5899
- label: string;
5900
- }
5901
- /**
5902
- * Scatter and bubble chart for relationships between two measures — with an optional third measure
5903
- * as bubble area and a categorical group as colour. Linear / log / time axes, per-group least-squares
5904
- * trend lines, reference lines and bands on either axis, nearest-point hover (a Delaunay search, so
5905
- * the pointer only has to be closest — never dead-centre on an 8 px dot), keyboard stepping and a
5906
- * data-table twin. Keep groups to three or fewer: past that, colours stop separating in a cloud.
5907
- *
5908
- * @example
5909
- * <sds-scatter-chart
5910
- * [data]="patients"
5911
- * x="age"
5912
- * y="duree"
5913
- * group="service"
5914
- * size="cout"
5915
- * xLabel="Âge"
5916
- * yLabel="Durée de séjour (j)"
5917
- * trendline
5918
- * />
5919
- */
5920
- declare class SdsScatterChart<T = any> {
5921
- readonly data: _angular_core.InputSignal<readonly T[] | null | undefined>;
5922
- /** Horizontal measure: numbers, Dates or ISO strings. */
5923
- readonly x: _angular_core.InputSignal<SdsAccessor<T, SdsXValue>>;
5924
- /** Vertical measure. */
5925
- readonly y: _angular_core.InputSignal<SdsAccessor<T, number | null | undefined>>;
5926
- /** Optional third measure, encoded as bubble AREA (not radius — area reads true). */
5927
- readonly size: _angular_core.InputSignal<SdsAccessor<T, number | null | undefined> | null>;
5928
- /** Optional categorical field coloured by slot. Three groups or fewer read best. */
5929
- readonly group: _angular_core.InputSignal<SdsAccessor<T, string | null | undefined> | null>;
5930
- /** Optional point name for the tooltip heading and the table (also the point's animation identity). */
5931
- readonly pointLabel: _angular_core.InputSignal<SdsAccessor<T, string | null | undefined> | null>;
5932
- /** Fix the group order (and so their colours) instead of first-appearance order. */
5933
- readonly groupOrder: _angular_core.InputSignal<readonly string[] | null>;
5934
- readonly heading: _angular_core.InputSignal<string>;
5935
- readonly subtitle: _angular_core.InputSignal<string>;
5936
- readonly height: _angular_core.InputSignalWithTransform<number, unknown>;
5937
- /** Dot radius when there is no `size` measure. */
5938
- readonly radius: _angular_core.InputSignalWithTransform<number, unknown>;
5939
- /** Largest bubble radius when `size` is set. */
5940
- readonly maxRadius: _angular_core.InputSignalWithTransform<number, unknown>;
5941
- /** Draw a least-squares trend line per group (dashed — it is a model, not data). Linear axes only. */
5942
- readonly trendline: _angular_core.InputSignalWithTransform<boolean, unknown>;
5943
- readonly grid: _angular_core.InputSignal<SdsChartGrid>;
5944
- readonly legend: _angular_core.InputSignal<SdsChartLegend>;
5945
- readonly annotations: _angular_core.InputSignal<readonly SdsChartAnnotation[]>;
5946
- readonly xScale: _angular_core.InputSignal<SdsChartScale>;
5947
- readonly yScale: _angular_core.InputSignal<SdsChartScale>;
5948
- readonly xMin: _angular_core.InputSignal<number | null>;
5949
- readonly xMax: _angular_core.InputSignal<number | null>;
5950
- readonly yMin: _angular_core.InputSignal<number | null>;
5951
- readonly yMax: _angular_core.InputSignal<number | null>;
5952
- readonly includeZero: _angular_core.InputSignalWithTransform<boolean, unknown>;
5953
- readonly xFormat: _angular_core.InputSignal<SdsXFormat | null>;
5954
- readonly valueFormat: _angular_core.InputSignal<SdsNumberFormat | null>;
5955
- /** Override the y-axis tick format (defaults to a compact form of `valueFormat`). */
5956
- readonly axisFormat: _angular_core.InputSignal<SdsNumberFormat | null>;
5957
- readonly sizeFormat: _angular_core.InputSignal<SdsNumberFormat | null>;
5958
- readonly xLabel: _angular_core.InputSignal<string>;
5959
- readonly yLabel: _angular_core.InputSignal<string>;
5960
- /** Name of the bubble size (tooltip, table). Default (`null`): the configured `labels.size`. */
5961
- readonly sizeLabel: _angular_core.InputSignal<string | null>;
5962
- protected readonly sizeName: _angular_core.Signal<string>;
5963
- readonly locale: _angular_core.InputSignal<string | null>;
5964
- readonly tooltip: _angular_core.InputSignalWithTransform<boolean, unknown>;
5965
- readonly animate: _angular_core.InputSignalWithTransform<boolean, unknown>;
5966
- readonly loading: _angular_core.InputSignalWithTransform<boolean, unknown>;
5967
- /** Empty-state text. Default (`null`): the configured `labels.empty` ("No data to display"). */
5968
- readonly emptyText: _angular_core.InputSignal<string | null>;
5969
- readonly tableToggle: _angular_core.InputSignalWithTransform<boolean, unknown>;
5970
- readonly ariaLabel: _angular_core.InputSignal<string | null>;
5971
- /** Hidden group names (two-way bindable; the legend toggles them). */
5972
- readonly hidden: _angular_core.ModelSignal<readonly string[]>;
5973
- readonly pointClick: _angular_core.OutputEmitterRef<SdsChartPointEvent<T>>;
5974
- protected readonly customTooltip: _angular_core.Signal<SdsChartTooltip | undefined>;
5975
- protected readonly uid: string;
5976
- protected readonly legendFocus: _angular_core.WritableSignal<string | null>;
5977
- protected readonly active: _angular_core.WritableSignal<number | null>;
5978
- protected readonly keyboard: _angular_core.WritableSignal<boolean>;
5979
- /** Leaving the chart dismisses a keyboard-driven readout (a pointer one clears on pointerleave). */
5980
- protected onBlur(): void;
5981
- private readonly width;
5982
- private readonly loc;
5983
- /** Built-in strings (provideSdsCharts labels over the English defaults). */
5984
- protected readonly text: _angular_core.Signal<_besaitech_ng_design_system.SdsChartLabels>;
5985
- private readonly animates;
5986
- private readonly palette;
5987
- protected readonly bubbles: _angular_core.Signal<boolean>;
5988
- private readonly points;
5989
- private readonly xIsTime;
5990
- /** Groups in colour order; a group keeps its slot when others are hidden. */
5991
- protected readonly groups: _angular_core.Signal<{
5992
- name: string;
5993
- color: string;
5994
- }[]>;
5995
- private readonly colorOf;
5996
- private readonly visiblePoints;
5997
- protected readonly isEmpty: _angular_core.Signal<boolean>;
5998
- private readonly fmtY;
5999
- private readonly fmtSize;
6000
- private readonly fmtX;
6001
- protected readonly layout: _angular_core.Signal<{
6002
- width: number;
6003
- height: number;
6004
- plot: PlotRect;
6005
- x: (v: number) => number;
6006
- y: (v: number) => number;
6007
- radius: (p: Dot<T>) => number;
6008
- xTicks: AxisTick[];
6009
- yTicks: {
6010
- pos: number;
6011
- label: string;
6012
- }[];
6013
- clipPad: number;
6014
- } | null>;
6015
- private readonly target;
6016
- /** Boolean, so a resize (width A → B) never counts as a data change: resizes snap, data animates. */
6017
- private readonly ready;
6018
- private readonly version;
6019
- private readonly geometry;
6020
- protected readonly dots: _angular_core.Signal<{
6021
- id: string;
6022
- cx: number;
6023
- cy: number;
6024
- r: number;
6025
- color: string;
6026
- dim: boolean;
6027
- size: number;
6028
- }[]>;
6029
- /** Least-squares fit per visible group, drawn across that group's own x range. */
6030
- protected readonly trends: _angular_core.Signal<{
6031
- group: string;
6032
- x1: number;
6033
- y1: number;
6034
- x2: number;
6035
- y2: number;
6036
- color: string;
6037
- dim: boolean;
6038
- }[]>;
6039
- protected readonly annotationsPx: _angular_core.Signal<ResolvedAnnotation[]>;
6040
- /** Nearest-point index, rebuilt only when the geometry settles. */
6041
- private readonly delaunay;
6042
- protected readonly activeDot: _angular_core.Signal<{
6043
- cx: number;
6044
- cy: number;
6045
- r: number;
6046
- color: string;
6047
- } | null>;
6048
- protected readonly tooltipCtx: _angular_core.Signal<SdsChartTooltipContext<T> | null>;
6049
- protected readonly liveText: _angular_core.Signal<string>;
6050
- protected onPointer(event: PointerEvent): void;
6051
- protected onClick(): void;
6052
- /** Arrow keys step through the points in x order. */
6053
- protected onKey(event: KeyboardEvent): void;
6054
- protected toggleGroup(name: string): void;
6055
- protected readonly legendPosition: _angular_core.Signal<"none" | "top" | "bottom" | "right">;
6056
- protected readonly legendItems: _angular_core.Signal<LegendItem[]>;
6057
- protected readonly label: _angular_core.Signal<string>;
6058
- protected readonly table: _angular_core.Signal<ChartTable>;
6059
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<SdsScatterChart<any>, never>;
6060
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<SdsScatterChart<any>, "sds-scatter-chart", never, { "data": { "alias": "data"; "required": false; "isSignal": true; }; "x": { "alias": "x"; "required": true; "isSignal": true; }; "y": { "alias": "y"; "required": true; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "group": { "alias": "group"; "required": false; "isSignal": true; }; "pointLabel": { "alias": "pointLabel"; "required": false; "isSignal": true; }; "groupOrder": { "alias": "groupOrder"; "required": false; "isSignal": true; }; "heading": { "alias": "heading"; "required": false; "isSignal": true; }; "subtitle": { "alias": "subtitle"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; "radius": { "alias": "radius"; "required": false; "isSignal": true; }; "maxRadius": { "alias": "maxRadius"; "required": false; "isSignal": true; }; "trendline": { "alias": "trendline"; "required": false; "isSignal": true; }; "grid": { "alias": "grid"; "required": false; "isSignal": true; }; "legend": { "alias": "legend"; "required": false; "isSignal": true; }; "annotations": { "alias": "annotations"; "required": false; "isSignal": true; }; "xScale": { "alias": "xScale"; "required": false; "isSignal": true; }; "yScale": { "alias": "yScale"; "required": false; "isSignal": true; }; "xMin": { "alias": "xMin"; "required": false; "isSignal": true; }; "xMax": { "alias": "xMax"; "required": false; "isSignal": true; }; "yMin": { "alias": "yMin"; "required": false; "isSignal": true; }; "yMax": { "alias": "yMax"; "required": false; "isSignal": true; }; "includeZero": { "alias": "includeZero"; "required": false; "isSignal": true; }; "xFormat": { "alias": "xFormat"; "required": false; "isSignal": true; }; "valueFormat": { "alias": "valueFormat"; "required": false; "isSignal": true; }; "axisFormat": { "alias": "axisFormat"; "required": false; "isSignal": true; }; "sizeFormat": { "alias": "sizeFormat"; "required": false; "isSignal": true; }; "xLabel": { "alias": "xLabel"; "required": false; "isSignal": true; }; "yLabel": { "alias": "yLabel"; "required": false; "isSignal": true; }; "sizeLabel": { "alias": "sizeLabel"; "required": false; "isSignal": true; }; "locale": { "alias": "locale"; "required": false; "isSignal": true; }; "tooltip": { "alias": "tooltip"; "required": false; "isSignal": true; }; "animate": { "alias": "animate"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "emptyText": { "alias": "emptyText"; "required": false; "isSignal": true; }; "tableToggle": { "alias": "tableToggle"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "hidden": { "alias": "hidden"; "required": false; "isSignal": true; }; }, { "hidden": "hiddenChange"; "pointClick": "pointClick"; }, ["customTooltip"], never, true, never>;
6061
- }
6062
-
6063
- /** `donut` has a hole for a headline figure; `pie` is solid. */
6064
- type SdsDonutVariant = 'donut' | 'pie';
6065
- /** What the legend prints after each label (the chart's direct labels). */
6066
- type SdsDonutLegendValue = 'percent' | 'value' | 'both' | 'none';
6067
- /** Slice order: `desc` = largest first, `none` = data order. */
6068
- type SdsDonutSort = 'desc' | 'none';
6069
- /** Key of the folded "Other" slice — in `hidden` and in `pointClick.key`. */
6070
- declare const SDS_DONUT_OTHER_KEY = "__sds_other__";
6071
- /**
6072
- * Donut, pie and half-donut for part-to-whole at a glance. Small tails fold into "Other" past
6073
- * `maxSlices` (a pie stops reading beyond ~6 parts), the legend doubles as direct labels with each
6074
- * share, the centre states the total and swaps to the hovered slice, slices separate with a
6075
- * constant 2 px gap, and the whole thing is keyboard-navigable with a data-table twin. Colour follows
6076
- * the category (its position in the data), never its rank.
6077
- *
6078
- * @example
6079
- * <sds-donut-chart heading="Motifs de séjour" [data]="rows" category="motif" value="sejours" />
6080
- */
6081
- declare class SdsDonutChart<T = any> {
6082
- readonly data: _angular_core.InputSignal<readonly T[] | null | undefined>;
6083
- /** The part's name. Rows sharing a name are summed into one slice. */
6084
- readonly category: _angular_core.InputSignal<SdsAccessor<T, string | null | undefined>>;
6085
- /** The part's size (negative and missing values are ignored). */
6086
- readonly value: _angular_core.InputSignal<SdsAccessor<T, number | null | undefined>>;
6087
- /** Optional per-row colour (any CSS colour) — e.g. a status palette. */
6088
- readonly color: _angular_core.InputSignal<SdsAccessor<T, string | null | undefined> | null>;
6089
- readonly heading: _angular_core.InputSignal<string>;
6090
- readonly subtitle: _angular_core.InputSignal<string>;
6091
- readonly variant: _angular_core.InputSignal<SdsDonutVariant>;
6092
- /** Draw a half-donut (a gauge-like arc) instead of a full circle. */
6093
- readonly half: _angular_core.InputSignalWithTransform<boolean, unknown>;
6094
- /** Diameter cap in px (the chart also shrinks to its container). */
6095
- readonly height: _angular_core.InputSignalWithTransform<number, unknown>;
6096
- /** Ring thickness in px. Defaults to ~26 % of the radius. */
6097
- readonly thickness: _angular_core.InputSignalWithTransform<number | null, unknown>;
6098
- /** Beyond this many slices the smallest fold into one "Other" slice. */
6099
- readonly maxSlices: _angular_core.InputSignalWithTransform<number, unknown>;
6100
- /** Name of the folded tail slice. Default (`null`): the configured `labels.other` ("Other"). */
6101
- readonly otherLabel: _angular_core.InputSignal<string | null>;
6102
- /** `desc` (default) orders slices largest first; `none` keeps the data order. */
6103
- readonly sort: _angular_core.InputSignal<SdsDonutSort>;
6104
- /** `auto` = right of the ring (below it on narrow containers). */
6105
- readonly legend: _angular_core.InputSignal<SdsChartLegend>;
6106
- readonly legendValue: _angular_core.InputSignal<SdsDonutLegendValue>;
6107
- /**
6108
- * Headline in the hole. Default (`null`): the configured `labels.total` ("Total"). An empty string
6109
- * `''` hides the centre readout entirely (label and figure — what `null` did before 0.0.67), and the
6110
- * hover tooltip takes over.
6111
- */
6112
- readonly centerLabel: _angular_core.InputSignal<string | null>;
6113
- /** Override the centre figure (e.g. "72 %" for a completion donut). */
6114
- readonly centerValue: _angular_core.InputSignal<string | null>;
6115
- readonly valueFormat: _angular_core.InputSignal<SdsNumberFormat | null>;
6116
- readonly locale: _angular_core.InputSignal<string | null>;
6117
- readonly tooltip: _angular_core.InputSignalWithTransform<boolean, unknown>;
6118
- readonly animate: _angular_core.InputSignalWithTransform<boolean, unknown>;
6119
- readonly loading: _angular_core.InputSignalWithTransform<boolean, unknown>;
6120
- /** Empty-state text. Default (`null`): the configured `labels.empty` ("No data to display"). */
6121
- readonly emptyText: _angular_core.InputSignal<string | null>;
6122
- readonly tableToggle: _angular_core.InputSignalWithTransform<boolean, unknown>;
6123
- readonly ariaLabel: _angular_core.InputSignal<string | null>;
6124
- /** Hidden slice keys (category names, or the "Other" slice). Two-way bindable. */
6125
- readonly hidden: _angular_core.ModelSignal<readonly string[]>;
6126
- readonly pointClick: _angular_core.OutputEmitterRef<SdsChartPointEvent<T>>;
6127
- protected readonly customTooltip: _angular_core.Signal<SdsChartTooltip | undefined>;
6128
- protected readonly focus: _angular_core.WritableSignal<string | null>;
6129
- protected readonly active: _angular_core.WritableSignal<string | null>;
6130
- protected readonly keyboard: _angular_core.WritableSignal<boolean>;
6131
- /** Leaving the chart dismisses a keyboard-driven readout (a pointer one clears on pointerleave). */
6132
- protected onBlur(): void;
6133
- protected readonly pointer: _angular_core.WritableSignal<{
6134
- x: number;
6135
- y: number;
6136
- }>;
6137
- private readonly width;
6138
- private readonly loc;
6139
- /** Built-in strings (provideSdsCharts labels over the English defaults). */
6140
- protected readonly text: _angular_core.Signal<_besaitech_ng_design_system.SdsChartLabels>;
6141
- private readonly animates;
6142
- private readonly palette;
6143
- private readonly fmt;
6144
- private readonly pct;
6145
- /** Slices after grouping, sorting and folding the tail into "Other". */
6146
- private readonly slices;
6147
- private readonly visible;
6148
- private readonly total;
6149
- protected readonly isEmpty: _angular_core.Signal<boolean>;
6150
- protected readonly size: _angular_core.Signal<number>;
6151
- protected readonly boxHeight: _angular_core.Signal<number>;
6152
- protected readonly showCenter: _angular_core.Signal<boolean>;
6153
- protected readonly showTooltip: _angular_core.Signal<boolean>;
6154
- protected readonly geo: _angular_core.Signal<{
6155
- cx: number;
6156
- cy: number;
6157
- outer: number;
6158
- inner: number;
6159
- start: number;
6160
- end: number;
6161
- valueSize: number;
6162
- labelSize: number;
6163
- labelY: number;
6164
- valueY: number;
6165
- subY: number;
6166
- } | null>;
6167
- private readonly target;
6168
- /** Boolean, so a resize (width A → B) never counts as a data change: resizes snap, data animates. */
6169
- private readonly ready;
6170
- private readonly version;
6171
- private readonly tween;
6172
- protected readonly arcs: _angular_core.Signal<{
6173
- key: string;
6174
- color: string;
6175
- d: string;
6176
- shift: string | null;
6177
- dim: boolean;
6178
- }[]>;
6179
- protected readonly center: _angular_core.Signal<{
6180
- label: string;
6181
- value: string;
6182
- sub: string;
6183
- }>;
6184
- protected readonly tooltipCtx: _angular_core.Signal<SdsChartTooltipContext<T> | null>;
6185
- /** Spoken readout — from the full label (the centre one is truncated to fit the hole). */
6186
- protected readonly liveText: _angular_core.Signal<string>;
6187
- protected readonly legendPosition: _angular_core.Signal<"none" | "top" | "bottom" | "right">;
6188
- protected hover(key: string, event: PointerEvent): void;
6189
- protected track(event: PointerEvent): void;
6190
- protected emit(key: string): void;
6191
- protected onKey(event: KeyboardEvent): void;
6192
- protected toggleSlice(key: string): void;
6193
- protected readonly legendItems: _angular_core.Signal<LegendItem[]>;
6194
- protected readonly label: _angular_core.Signal<string>;
6195
- protected readonly table: _angular_core.Signal<ChartTable>;
6196
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<SdsDonutChart<any>, never>;
6197
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<SdsDonutChart<any>, "sds-donut-chart", never, { "data": { "alias": "data"; "required": false; "isSignal": true; }; "category": { "alias": "category"; "required": true; "isSignal": true; }; "value": { "alias": "value"; "required": true; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "heading": { "alias": "heading"; "required": false; "isSignal": true; }; "subtitle": { "alias": "subtitle"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "half": { "alias": "half"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; "thickness": { "alias": "thickness"; "required": false; "isSignal": true; }; "maxSlices": { "alias": "maxSlices"; "required": false; "isSignal": true; }; "otherLabel": { "alias": "otherLabel"; "required": false; "isSignal": true; }; "sort": { "alias": "sort"; "required": false; "isSignal": true; }; "legend": { "alias": "legend"; "required": false; "isSignal": true; }; "legendValue": { "alias": "legendValue"; "required": false; "isSignal": true; }; "centerLabel": { "alias": "centerLabel"; "required": false; "isSignal": true; }; "centerValue": { "alias": "centerValue"; "required": false; "isSignal": true; }; "valueFormat": { "alias": "valueFormat"; "required": false; "isSignal": true; }; "locale": { "alias": "locale"; "required": false; "isSignal": true; }; "tooltip": { "alias": "tooltip"; "required": false; "isSignal": true; }; "animate": { "alias": "animate"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "emptyText": { "alias": "emptyText"; "required": false; "isSignal": true; }; "tableToggle": { "alias": "tableToggle"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "hidden": { "alias": "hidden"; "required": false; "isSignal": true; }; }, { "hidden": "hiddenChange"; "pointClick": "pointClick"; }, ["customTooltip"], never, true, never>;
6198
- }
6199
-
6200
- /** `sequential` = magnitude (one hue, pale → strong); `diverging` = polarity around a midpoint. */
6201
- type SdsHeatmapScheme = 'sequential' | 'diverging';
6202
- /**
6203
- * Heatmap — a matrix of two categorical dimensions coloured by a measure: weekday × hour, service ×
6204
- * month, product × region. Sequential (one hue, light → dark) or diverging (two opposite hues around
6205
- * a neutral gray midpoint) colour, mixed by the browser in OKLab from theme tokens so it re-themes and
6206
- * flips to dark mode on its own. Values print inside cells only where they fit, missing cells read
6207
- * as empty (not as zero), arrow keys move cell by cell, and a scale legend states the range.
6208
- *
6209
- * @example
6210
- * <sds-heatmap [data]="rows" x="heure" y="jour" value="arrivees" heading="Arrivées aux urgences" />
6211
- */
6212
- declare class SdsHeatmap<T = any> {
6213
- readonly data: _angular_core.InputSignal<readonly T[] | null | undefined>;
6214
- /** Column dimension. */
6215
- readonly x: _angular_core.InputSignal<SdsAccessor<T, SdsXValue>>;
6216
- /** Row dimension. */
6217
- readonly y: _angular_core.InputSignal<SdsAccessor<T, SdsXValue>>;
6218
- /** The measure colouring each cell. Rows sharing an (x, y) pair are summed. */
6219
- readonly value: _angular_core.InputSignal<SdsAccessor<T, number | null | undefined>>;
6220
- /** Fix column order (default: first appearance). */
6221
- readonly xOrder: _angular_core.InputSignal<readonly SdsXValue[] | null>;
6222
- /** Fix row order (default: first appearance). */
6223
- readonly yOrder: _angular_core.InputSignal<readonly SdsXValue[] | null>;
6224
- readonly heading: _angular_core.InputSignal<string>;
6225
- readonly subtitle: _angular_core.InputSignal<string>;
6226
- readonly scheme: _angular_core.InputSignal<SdsHeatmapScheme>;
6227
- /** Fix the colour domain instead of the data extent. */
6228
- readonly domain: _angular_core.InputSignal<readonly [number, number] | null>;
6229
- /** The diverging scheme's neutral value. */
6230
- readonly midpoint: _angular_core.InputSignalWithTransform<number, unknown>;
6231
- /** Height in px. Defaults to `cellHeight` per row. */
6232
- readonly height: _angular_core.InputSignalWithTransform<number | null, unknown>;
6233
- readonly cellHeight: _angular_core.InputSignalWithTransform<number, unknown>;
6234
- readonly radius: _angular_core.InputSignalWithTransform<number, unknown>;
6235
- /** Print each value inside its cell — only when every value fits (never a partial matrix). */
6236
- readonly showValues: _angular_core.InputSignalWithTransform<boolean, unknown>;
6237
- /** Show the colour-scale legend under the matrix. */
6238
- readonly scaleLegend: _angular_core.InputSignalWithTransform<boolean, unknown>;
6239
- readonly valueFormat: _angular_core.InputSignal<SdsNumberFormat | null>;
6240
- /** Format of the column / row labels (a function; dates default to their day). */
6241
- readonly xFormat: _angular_core.InputSignal<SdsXFormat | null>;
6242
- /** Name of the measure in the tooltip (e.g. "Arrivals"). Default (`null`): `labels.value`. */
6243
- readonly valueLabel: _angular_core.InputSignal<string | null>;
6244
- /** Column-axis title, drawn under the matrix. */
6245
- readonly xLabel: _angular_core.InputSignal<string>;
6246
- /** Row-axis title, drawn vertically on the left (and the table's first column header). */
6247
- readonly yLabel: _angular_core.InputSignal<string>;
6248
- readonly locale: _angular_core.InputSignal<string | null>;
6249
- readonly tooltip: _angular_core.InputSignalWithTransform<boolean, unknown>;
6250
- /** Cross-fade cell colours when the data changes. */
6251
- readonly animate: _angular_core.InputSignalWithTransform<boolean, unknown>;
6252
- readonly loading: _angular_core.InputSignalWithTransform<boolean, unknown>;
6253
- /** Empty-state text. Default (`null`): the configured `labels.empty` ("No data to display"). */
6254
- readonly emptyText: _angular_core.InputSignal<string | null>;
6255
- readonly tableToggle: _angular_core.InputSignalWithTransform<boolean, unknown>;
6256
- readonly ariaLabel: _angular_core.InputSignal<string | null>;
6257
- readonly pointClick: _angular_core.OutputEmitterRef<SdsChartPointEvent<T>>;
6258
- protected readonly customTooltip: _angular_core.Signal<SdsChartTooltip | undefined>;
6259
- protected readonly active: _angular_core.WritableSignal<number | null>;
6260
- protected readonly keyboard: _angular_core.WritableSignal<boolean>;
6261
- /** Leaving the chart dismisses a keyboard-driven readout (a pointer one clears on pointerleave). */
6262
- protected onBlur(): void;
6263
- private readonly width;
6264
- private readonly loc;
6265
- /** Built-in strings (provideSdsCharts labels over the English defaults). */
6266
- protected readonly text: _angular_core.Signal<_besaitech_ng_design_system.SdsChartLabels>;
6267
- protected readonly animates: _angular_core.Signal<boolean>;
6268
- private readonly fmt;
6269
- private readonly matrix;
6270
- protected readonly isEmpty: _angular_core.Signal<boolean>;
6271
- private readonly fmtX;
6272
- /** Colour domain; the diverging arms are made symmetric so equal distances read as equal. */
6273
- protected readonly scale: _angular_core.Signal<{
6274
- lo: number;
6275
- hi: number;
6276
- mid: number;
6277
- minLabel: string;
6278
- maxLabel: string;
6279
- midLabel: string;
6280
- gradient: string;
6281
- }>;
6282
- /** Signed position on the scale: 0…1 sequential, −1…1 diverging. */
6283
- private position;
6284
- /**
6285
- * Where a cell label switches to the strong-end ink — measured, not guessed: the point where the
6286
- * strong ink starts to out-contrast the pale one, per ramp, in both modes.
6287
- */
6288
- private strongEnd;
6289
- protected readonly resolvedHeight: _angular_core.Signal<number>;
6290
- protected readonly layout: _angular_core.Signal<{
6291
- width: number;
6292
- height: number;
6293
- plot: {
6294
- left: number;
6295
- top: number;
6296
- width: number;
6297
- height: number;
6298
- };
6299
- bx: d3_scale.ScaleBand<number>;
6300
- by: d3_scale.ScaleBand<number>;
6301
- xTicks: AxisTick[];
6302
- yTicks: {
6303
- pos: number;
6304
- label: string;
6305
- }[];
6306
- } | null>;
6307
- protected readonly cells: _angular_core.Signal<{
6308
- id: string;
6309
- i: number;
6310
- x: number;
6311
- y: number;
6312
- w: number;
6313
- h: number;
6314
- fill: string;
6315
- text: string;
6316
- ink: string;
6317
- missing: boolean;
6318
- }[]>;
6319
- protected readonly activeCell: _angular_core.Signal<{
6320
- id: string;
6321
- i: number;
6322
- x: number;
6323
- y: number;
6324
- w: number;
6325
- h: number;
6326
- fill: string;
6327
- text: string;
6328
- ink: string;
6329
- missing: boolean;
6330
- } | null>;
6331
- protected readonly tooltipCtx: _angular_core.Signal<SdsChartTooltipContext<T> | null>;
6332
- protected readonly liveText: _angular_core.Signal<string>;
6333
- protected hover(i: number, _event: PointerEvent): void;
6334
- protected emit(i: number): void;
6335
- /** Arrow keys move one cell in any direction. */
6336
- protected onKey(event: KeyboardEvent): void;
6337
- protected readonly label: _angular_core.Signal<string>;
6338
- protected readonly table: _angular_core.Signal<ChartTable>;
6339
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<SdsHeatmap<any>, never>;
6340
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<SdsHeatmap<any>, "sds-heatmap", never, { "data": { "alias": "data"; "required": false; "isSignal": true; }; "x": { "alias": "x"; "required": true; "isSignal": true; }; "y": { "alias": "y"; "required": true; "isSignal": true; }; "value": { "alias": "value"; "required": true; "isSignal": true; }; "xOrder": { "alias": "xOrder"; "required": false; "isSignal": true; }; "yOrder": { "alias": "yOrder"; "required": false; "isSignal": true; }; "heading": { "alias": "heading"; "required": false; "isSignal": true; }; "subtitle": { "alias": "subtitle"; "required": false; "isSignal": true; }; "scheme": { "alias": "scheme"; "required": false; "isSignal": true; }; "domain": { "alias": "domain"; "required": false; "isSignal": true; }; "midpoint": { "alias": "midpoint"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; "cellHeight": { "alias": "cellHeight"; "required": false; "isSignal": true; }; "radius": { "alias": "radius"; "required": false; "isSignal": true; }; "showValues": { "alias": "showValues"; "required": false; "isSignal": true; }; "scaleLegend": { "alias": "scaleLegend"; "required": false; "isSignal": true; }; "valueFormat": { "alias": "valueFormat"; "required": false; "isSignal": true; }; "xFormat": { "alias": "xFormat"; "required": false; "isSignal": true; }; "valueLabel": { "alias": "valueLabel"; "required": false; "isSignal": true; }; "xLabel": { "alias": "xLabel"; "required": false; "isSignal": true; }; "yLabel": { "alias": "yLabel"; "required": false; "isSignal": true; }; "locale": { "alias": "locale"; "required": false; "isSignal": true; }; "tooltip": { "alias": "tooltip"; "required": false; "isSignal": true; }; "animate": { "alias": "animate"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "emptyText": { "alias": "emptyText"; "required": false; "isSignal": true; }; "tableToggle": { "alias": "tableToggle"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, { "pointClick": "pointClick"; }, ["customTooltip"], never, true, never>;
6341
- }
6342
-
6343
- /** A treemap node: a leaf carries `value`; a branch carries `children` (its value is their sum). */
6344
- interface SdsTreemapNode {
6345
- name: string;
6346
- value?: number | null;
6347
- children?: readonly SdsTreemapNode[];
6348
- /** Override the colour of this node's whole branch (top-level nodes) or of one leaf. */
6349
- color?: string;
6350
- /** Label ink for a custom `color` (defaults to white). */
6351
- ink?: string;
6352
- }
6353
- /**
6354
- * Treemap for part-to-whole across many items or a hierarchy — budget lines, stock by family, stays
6355
- * by service and unit. Squarified tiles sized by value, coloured by their top-level branch,
6356
- * separated by surface gaps (wider between branches), labelled only where the name fits, with a
6357
- * breadcrumb drill-down: click a branch to zoom into it, the breadcrumb to come back. Leaf clicks
6358
- * emit `pointClick`.
6359
- *
6360
- * @example
6361
- * <sds-treemap heading="Budget 2026" [data]="[{ name: 'Personnel', children: [{ name: 'Soins', value: 48 }] }]" />
6362
- */
6363
- declare class SdsTreemap {
6364
- readonly data: _angular_core.InputSignal<readonly SdsTreemapNode[] | null | undefined>;
6365
- readonly heading: _angular_core.InputSignal<string>;
6366
- readonly subtitle: _angular_core.InputSignal<string>;
6367
- readonly height: _angular_core.InputSignalWithTransform<number, unknown>;
6368
- readonly valueFormat: _angular_core.InputSignal<SdsNumberFormat | null>;
6369
- /** Click a branch to zoom into it (with a breadcrumb back). */
6370
- readonly drilldown: _angular_core.InputSignalWithTransform<boolean, unknown>;
6371
- /** Name of the top of the breadcrumb. */
6372
- /** Default (`null`): the configured `labels.all` ("All"). */
6373
- readonly rootLabel: _angular_core.InputSignal<string | null>;
6374
- protected readonly rootName: _angular_core.Signal<string>;
6375
- /** Print the value under the name inside tiles large enough. */
6376
- readonly showValues: _angular_core.InputSignalWithTransform<boolean, unknown>;
6377
- /** `auto` = the branch legend below the tiles when there are two or more branches. */
6378
- readonly legend: _angular_core.InputSignal<SdsChartLegend>;
6379
- readonly locale: _angular_core.InputSignal<string | null>;
6380
- readonly tooltip: _angular_core.InputSignalWithTransform<boolean, unknown>;
6381
- readonly animate: _angular_core.InputSignalWithTransform<boolean, unknown>;
6382
- readonly loading: _angular_core.InputSignalWithTransform<boolean, unknown>;
6383
- /** Empty-state text. Default (`null`): the configured `labels.empty` ("No data to display"). */
6384
- readonly emptyText: _angular_core.InputSignal<string | null>;
6385
- readonly tableToggle: _angular_core.InputSignalWithTransform<boolean, unknown>;
6386
- readonly ariaLabel: _angular_core.InputSignal<string | null>;
6387
- /** A leaf tile was clicked (branches zoom instead while `drilldown` is on). `key` is the path "A › B". */
6388
- readonly pointClick: _angular_core.OutputEmitterRef<SdsChartPointEvent<SdsTreemapNode>>;
6389
- protected readonly customTooltip: _angular_core.Signal<SdsChartTooltip | undefined>;
6390
- /** Requested zoom: data indices from the root down to the zoomed branch. */
6391
- private readonly path;
6392
- protected readonly active: _angular_core.WritableSignal<string | null>;
6393
- protected readonly keyboard: _angular_core.WritableSignal<boolean>;
6394
- private readonly announcement;
6395
- protected readonly pointer: _angular_core.WritableSignal<{
6396
- x: number;
6397
- y: number;
6398
- }>;
6399
- protected readonly width: _angular_core.Signal<number>;
6400
- private readonly loc;
6401
- /** Built-in strings (provideSdsCharts labels over the English defaults). */
6402
- protected readonly text: _angular_core.Signal<_besaitech_ng_design_system.SdsChartLabels>;
6403
- private readonly animates;
6404
- private readonly palette;
6405
- private readonly fmt;
6406
- private readonly pct;
6407
- /** Leaving the chart dismisses a keyboard-driven readout (a pointer one clears on pointerleave). */
6408
- protected onBlur(): void;
6409
- /** Full hierarchy, summed once. */
6410
- private readonly root;
6411
- private build;
6412
- protected readonly isEmpty: _angular_core.Signal<boolean>;
6413
- /**
6414
- * The zoom that actually applies: the requested path walked against the CURRENT data, stopping at
6415
- * the first index that no longer names a branch — so new data can never leave a stale zoom behind.
6416
- */
6417
- protected readonly zoom: _angular_core.Signal<{
6418
- node: SdsTreemapNode;
6419
- indices: number[];
6420
- names: string[];
6421
- }>;
6422
- /** Branch colour + label ink per top-level data index (colour follows the entity, not its size). */
6423
- private readonly branchStyle;
6424
- /** The zoomed sub-tree, laid out at the current size. */
6425
- private readonly layoutRoot;
6426
- private readonly tiles;
6427
- private readonly target;
6428
- private readonly ready;
6429
- private readonly version;
6430
- private readonly geometry;
6431
- protected readonly rects: _angular_core.Signal<{
6432
- key: string;
6433
- x: number;
6434
- y: number;
6435
- w: number;
6436
- h: number;
6437
- color: string;
6438
- ink: string;
6439
- name: string;
6440
- value: string;
6441
- }[]>;
6442
- protected readonly activeRect: _angular_core.Signal<{
6443
- key: string;
6444
- x: number;
6445
- y: number;
6446
- w: number;
6447
- h: number;
6448
- color: string;
6449
- ink: string;
6450
- name: string;
6451
- value: string;
6452
- } | null>;
6453
- private readonly activeTile;
6454
- protected readonly tooltipCtx: _angular_core.Signal<SdsChartTooltipContext<SdsTreemapNode> | null>;
6455
- protected readonly liveText: _angular_core.Signal<string>;
6456
- protected hover(key: string, event: PointerEvent): void;
6457
- protected track(event: PointerEvent): void;
6458
- /** Zoom to a breadcrumb depth (0 = everything) and say so to screen readers. */
6459
- protected zoomTo(depth: number): void;
6460
- private announceZoom;
6461
- /** Zoom into the tile's branch — or, at the deepest level, report the leaf. */
6462
- protected activate(key: string): void;
6463
- protected onKey(event: KeyboardEvent): void;
6464
- protected readonly legendItems: _angular_core.Signal<LegendItem[]>;
6465
- protected readonly legendPosition: _angular_core.Signal<"none" | "top" | "bottom" | "right">;
6466
- protected readonly label: _angular_core.Signal<string>;
6467
- protected readonly table: _angular_core.Signal<ChartTable>;
6468
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<SdsTreemap, never>;
6469
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<SdsTreemap, "sds-treemap", never, { "data": { "alias": "data"; "required": false; "isSignal": true; }; "heading": { "alias": "heading"; "required": false; "isSignal": true; }; "subtitle": { "alias": "subtitle"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; "valueFormat": { "alias": "valueFormat"; "required": false; "isSignal": true; }; "drilldown": { "alias": "drilldown"; "required": false; "isSignal": true; }; "rootLabel": { "alias": "rootLabel"; "required": false; "isSignal": true; }; "showValues": { "alias": "showValues"; "required": false; "isSignal": true; }; "legend": { "alias": "legend"; "required": false; "isSignal": true; }; "locale": { "alias": "locale"; "required": false; "isSignal": true; }; "tooltip": { "alias": "tooltip"; "required": false; "isSignal": true; }; "animate": { "alias": "animate"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "emptyText": { "alias": "emptyText"; "required": false; "isSignal": true; }; "tableToggle": { "alias": "tableToggle"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, { "pointClick": "pointClick"; }, ["customTooltip"], never, true, never>;
6470
- }
6471
-
6472
- type SdsSparklineVariant = 'line' | 'area' | 'bar';
6473
- /**
6474
- * A word-sized trend — in a table cell, a KPI tile, a list row. No axes, no legend: the shape is the
6475
- * message. Line, area or micro-bars; an optional normal range band and reference value; the last
6476
- * point (and optionally min / max) marked; a tiny hover readout; and an accessible summary (first,
6477
- * last, min, max) so the trend is never visual-only.
6478
- *
6479
- * @example
6480
- * <sds-sparkline [data]="[12, 14, 13, 18, 21, 19, 24]" label="Admissions sur 7 jours" />
6481
- */
6482
- declare class SdsSparkline {
6483
- /** The values in order. `null` leaves a gap. */
6484
- readonly data: _angular_core.InputSignal<readonly (number | null | undefined)[] | null | undefined>;
6485
- /** Optional name per point (dates, weeks) for the hover readout. */
6486
- readonly labels: _angular_core.InputSignal<readonly string[] | null>;
6487
- readonly variant: _angular_core.InputSignal<SdsSparklineVariant>;
6488
- /** Width in px; `null` (default) fills the container. */
6489
- readonly width: _angular_core.InputSignalWithTransform<number | null, unknown>;
6490
- readonly height: _angular_core.InputSignalWithTransform<number, unknown>;
6491
- /** Any CSS colour. Defaults to the first categorical slot. */
6492
- readonly color: _angular_core.InputSignal<string | null>;
6493
- readonly strokeWidth: _angular_core.InputSignalWithTransform<number, unknown>;
6494
- /** Mark the last point. */
6495
- readonly showLast: _angular_core.InputSignalWithTransform<boolean, unknown>;
6496
- /** Mark the lowest and highest points. */
6497
- readonly showMinMax: _angular_core.InputSignalWithTransform<boolean, unknown>;
6498
- /** Shade a normal range, e.g. [60, 100]. */
6499
- readonly band: _angular_core.InputSignal<readonly [number, number] | null>;
6500
- /** Draw a reference value (a target, zero, last year's mean). */
6501
- readonly reference: _angular_core.InputSignal<number | null>;
6502
- /** Include zero in the value range (bars always do). */
6503
- readonly includeZero: _angular_core.InputSignalWithTransform<boolean, unknown>;
6504
- readonly valueFormat: _angular_core.InputSignal<SdsNumberFormat | null>;
6505
- /** What the trend measures — prefixes the spoken summary. */
6506
- readonly label: _angular_core.InputSignal<string>;
6507
- /** Replace the generated summary ("Trend: from 12 to 24 — min…", `labels.sparklineSummary`) entirely. */
6508
- readonly ariaLabel: _angular_core.InputSignal<string | null>;
6509
- readonly tooltip: _angular_core.InputSignalWithTransform<boolean, unknown>;
6510
- readonly animate: _angular_core.InputSignalWithTransform<boolean, unknown>;
6511
- readonly locale: _angular_core.InputSignal<string | null>;
6512
- protected readonly uid: string;
6513
- protected readonly active: _angular_core.WritableSignal<number | null>;
6514
- private readonly measured;
6515
- private readonly loc;
6516
- /** Built-in strings (provideSdsCharts labels over the English defaults). */
6517
- private readonly text;
6518
- private readonly animates;
6519
- private readonly fmt;
6520
- private readonly palette;
6521
- protected readonly tint: _angular_core.Signal<string>;
6522
- protected readonly barTint: _angular_core.Signal<string>;
6523
- private readonly values;
6524
- protected readonly geo: _angular_core.Signal<{
6525
- width: number;
6526
- x: (i: number) => number;
6527
- y: (v: number) => number;
6528
- base: number;
6529
- band: {
6530
- y: number;
6531
- h: number;
6532
- } | null;
6533
- ref: number | null;
6534
- } | null>;
6535
- private readonly target;
6536
- private readonly ready;
6537
- private readonly version;
6538
- private readonly tween;
6539
- private readonly seq;
6540
- protected readonly paths: _angular_core.Signal<{
6541
- line: string;
6542
- area: string;
6543
- }>;
6544
- protected readonly bars: _angular_core.Signal<{
6545
- d: string;
6546
- last: boolean;
6547
- }[]>;
6548
- protected readonly markers: _angular_core.Signal<{
6549
- kind: string;
6550
- x: number;
6551
- y: number;
6552
- }[]>;
6553
- protected readonly activePoint: _angular_core.Signal<{
6554
- x: number;
6555
- y: number;
6556
- } | null>;
6557
- protected readonly tooltipCtx: _angular_core.Signal<SdsChartTooltipContext<any> | null>;
6558
- /** "Admissions: from 12 to 24 — min 12, max 24, 7 points" (`labels.sparklineSummary`). */
6559
- protected readonly summary: _angular_core.Signal<string>;
6560
- protected onPointer(event: PointerEvent): void;
6561
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<SdsSparkline, never>;
6562
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<SdsSparkline, "sds-sparkline", never, { "data": { "alias": "data"; "required": false; "isSignal": true; }; "labels": { "alias": "labels"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "strokeWidth": { "alias": "strokeWidth"; "required": false; "isSignal": true; }; "showLast": { "alias": "showLast"; "required": false; "isSignal": true; }; "showMinMax": { "alias": "showMinMax"; "required": false; "isSignal": true; }; "band": { "alias": "band"; "required": false; "isSignal": true; }; "reference": { "alias": "reference"; "required": false; "isSignal": true; }; "includeZero": { "alias": "includeZero"; "required": false; "isSignal": true; }; "valueFormat": { "alias": "valueFormat"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "tooltip": { "alias": "tooltip"; "required": false; "isSignal": true; }; "animate": { "alias": "animate"; "required": false; "isSignal": true; }; "locale": { "alias": "locale"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
6563
- }
6564
-
6565
- /** How the change is expressed: relative (+12,4 %) or in the value's own unit (+38). */
6566
- type SdsKpiDeltaMode = 'percent' | 'absolute';
6567
- type SdsKpiSize = 'md' | 'lg';
6568
- /** `card` draws its own surface; `plain` sits inside a card or grid you already have. */
6569
- type SdsKpiAppearance = 'card' | 'plain';
6570
- /**
6571
- * A stat tile — the number IS the chart. Label, headline value, a signed change against a named
6572
- * period whose colour means "good" or "bad" (set `upIsGood` false for waits, costs, incidents), an
6573
- * arrow glyph and a spoken sentence so the change never relies on colour, and an optional sparkline
6574
- * of the recent trend. Values auto-compact (12 900 → 12,9 k) unless a format says otherwise.
6575
- *
6576
- * @example
6577
- * <sds-kpi label="Admissions" [value]="1284" [previous]="1150" deltaLabel="vs semaine passée" [trend]="last12Weeks" />
6578
- */
6579
- declare class SdsKpi {
6580
- readonly label: _angular_core.InputSignal<string>;
6581
- readonly value: _angular_core.InputSignal<number | null | undefined>;
6582
- /** Value format. Default: exact below 10 000, compact above (12,9 k · 4,2 M). */
6583
- readonly valueFormat: _angular_core.InputSignal<SdsNumberFormat | null>;
6584
- /** The comparison value — the change is computed from it. */
6585
- readonly previous: _angular_core.InputSignal<number | null | undefined>;
6586
- /** Give the change directly instead of `previous` (a ratio in `percent` mode: 0.124 = +12,4 %). */
6587
- readonly delta: _angular_core.InputSignal<number | null | undefined>;
6588
- readonly deltaMode: _angular_core.InputSignal<SdsKpiDeltaMode>;
6589
- /** The named period, e.g. "vs mois dernier". */
6590
- readonly deltaLabel: _angular_core.InputSignal<string>;
6591
- /** False when a rise is bad news (waiting time, cost, incidents). */
6592
- readonly upIsGood: _angular_core.InputSignalWithTransform<boolean, unknown>;
6593
- readonly trend: _angular_core.InputSignal<readonly (number | null)[] | null>;
6594
- readonly trendLabels: _angular_core.InputSignal<readonly string[] | null>;
6595
- readonly trendVariant: _angular_core.InputSignal<SdsSparklineVariant>;
6596
- readonly trendColor: _angular_core.InputSignal<string | null>;
6597
- readonly icon: _angular_core.InputSignal<"search" | "filter" | "chart-column" | "chart-line" | "chart-bar" | "chart-area" | "chart-pie" | "chart-scatter" | "grid-3x3" | "activity" | "gauge" | "trending-up" | "trending-down" | "clipboard-list" | "credit-card" | "external-link" | "languages" | "megaphone" | "monitor" | "store" | "user-round" | "home" | "user-plus" | "user-check" | "hand" | "users" | "bike" | "building-2" | "package" | "package-plus" | "package-open" | "rotate-ccw" | "bar-chart-3" | "log-out" | "panel-left-close" | "panel-left-open" | "panel-left" | "calendar" | "chevron-right" | "chevron-left" | "chevron-down" | "chevron-up" | "plus" | "minus" | "chevrons-left" | "chevrons-right" | "x" | "check" | "alert-circle" | "info" | "copy" | "type" | "tag" | "ticket" | "square" | "square-check" | "circle-dot" | "circle-user" | "layout-grid" | "panels-top-left" | "panel-top" | "rows-3" | "book-open" | "palette" | "bell" | "phone" | "settings" | "align-left" | "toggle-left" | "arrow-up" | "arrow-down" | "chevrons-up-down" | "chevrons-up" | "chevrons-down" | "star" | "message-square" | "table" | "qr-code" | "eye" | "eye-off" | "user" | "check-circle" | "arrows-clockwise" | "menu" | "file-text" | "file-check" | "hash" | "map-pin" | "inbox" | "arrow-right" | "refresh-cw" | "loader-circle" | "locate-fixed" | "locate-off" | "bug" | "scroll-text" | "moon" | "sun" | "search-x" | "command" | "sparkles" | "triangle-alert" | "octagon-x" | "ban" | "ellipsis" | "ellipsis-vertical" | "grip-vertical" | "upload" | "image" | "image-off" | "utensils" | "zoom-in" | "zoom-out" | "trash-2" | "clock" | "pencil" | "circle-help" | "stock" | "allergen-cereals-gluten" | "allergen-crustaceans" | "allergen-eggs" | "allergen-fish" | "allergen-peanuts" | "allergen-soybeans" | "allergen-milk" | "allergen-nuts" | "allergen-celery" | "allergen-mustard" | "allergen-sesame" | "allergen-sulphites" | "allergen-lupin" | "allergen-molluscs" | null>;
6598
- /** Shown under the value when there is no change to report. */
6599
- readonly hint: _angular_core.InputSignal<string>;
6600
- readonly size: _angular_core.InputSignal<SdsKpiSize>;
6601
- readonly appearance: _angular_core.InputSignal<SdsKpiAppearance>;
6602
- readonly loading: _angular_core.InputSignalWithTransform<boolean, unknown>;
6603
- readonly locale: _angular_core.InputSignal<string | null>;
6604
- private readonly loc;
6605
- /** Built-in strings (provideSdsCharts labels over the English defaults). */
6606
- private readonly text;
6607
- protected readonly display: _angular_core.Signal<string>;
6608
- private readonly deltaValue;
6609
- /** The change, signed, with a tone that means good/bad — never colour alone (glyph + words). */
6610
- protected readonly deltaView: _angular_core.Signal<{
6611
- text: string;
6612
- tone: string;
6613
- icon: "trending-up" | "trending-down" | "minus";
6614
- spoken: string;
6615
- } | null>;
6616
- private absoluteFormat;
6617
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<SdsKpi, never>;
6618
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<SdsKpi, "sds-kpi", never, { "label": { "alias": "label"; "required": true; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "valueFormat": { "alias": "valueFormat"; "required": false; "isSignal": true; }; "previous": { "alias": "previous"; "required": false; "isSignal": true; }; "delta": { "alias": "delta"; "required": false; "isSignal": true; }; "deltaMode": { "alias": "deltaMode"; "required": false; "isSignal": true; }; "deltaLabel": { "alias": "deltaLabel"; "required": false; "isSignal": true; }; "upIsGood": { "alias": "upIsGood"; "required": false; "isSignal": true; }; "trend": { "alias": "trend"; "required": false; "isSignal": true; }; "trendLabels": { "alias": "trendLabels"; "required": false; "isSignal": true; }; "trendVariant": { "alias": "trendVariant"; "required": false; "isSignal": true; }; "trendColor": { "alias": "trendColor"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "hint": { "alias": "hint"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "appearance": { "alias": "appearance"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "locale": { "alias": "locale"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
6619
- }
6620
-
6621
- export { SDS_ALLERGENS, SDS_ALLERGEN_ICONS, SDS_ALLERGEN_LABELS_EN, SDS_CHART_CONFIG, SDS_CHART_LABELS_EN, SDS_DONUT_OTHER_KEY, SDS_ICONS, SDS_PHONE_COUNTRIES, SDS_THEME_STORAGE_KEY, SDS_UI_PREF_LANG_PARAM, SDS_UI_PREF_THEME_PARAM, SdsAccordion, SdsAccordionContent, SdsAccordionHeader, SdsAccordionPanel, SdsAccordionStore, SdsAddressAutocomplete, SdsAddressExtra, SdsAllergenIcon, SdsAvatar, SdsBadge, SdsBarChart, SdsBulkBar, SdsButton, SdsCalendar, SdsCard, SdsChartTooltip, SdsCheckbox, SdsChecklistRow, SdsChip, SdsChipGroup, SdsDatePicker, SdsDateRangePicker, SdsDonutChart, SdsEnvBanner, SdsFileDrop, SdsHeatmap, SdsIcon, SdsImageCropper, SdsInput, SdsInputNumber, SdsKpi, SdsLanguageSwitcher, SdsLineChart, SdsLocalizedInput, SdsMenu, SdsMenuItem, SdsMenuTrigger, SdsMultiSelect, SdsNavGroup, SdsNavItem, SdsOtpInput, SdsPaginator, SdsPhoneInput, SdsRadio, SdsRangeCalendar, SdsScatterChart, SdsScore, SdsSearchCommand, SdsSegmented, SdsSelect, SdsSelectEmpty, SdsSelectFooter, SdsSelectOption, SdsShell, SdsSidebar, SdsSortableHandle, SdsSortableItem, SdsSortableList, SdsSparkline, SdsStatusTile, SdsTab, SdsTabList, SdsTabPanel, SdsTabPanels, SdsTable, SdsTableCell, SdsTableEmpty, SdsTableHeader, SdsTableRowExpansion, SdsTabs, SdsTabsStore, SdsTextarea, SdsThemeService, SdsThemeToggle, SdsTimeInput, SdsToastHost, SdsToastService, SdsToggleSwitch, SdsTopbar, SdsTreemap, SdsTriStateChip, SdsUserMenu, SidebarStore, addDays, addMonths, addMonthsKeepDay, appendUiPrefs, diffInDays, formatDateRange, formatDdMmYyyy, formatHhMm, isOutOfRange, isSameDay, isSameRange, isSdsThemeMode, isoDay, pad2, provideSdsCharts, readUiPrefs, sdsFileMatchesAccept, sdsFormatBytes, sdsFormatNational, sdsLastDays, sdsLastMonths, sdsMatchDialCode, sdsNormalizeSignificant, startOfDay, startOfMonth, stripUiPrefs };
6622
- export type { SdsAccessor, SdsAccordionActive, SdsAccordionValue, SdsAddressAutocompleteAppearance, SdsAddressAutocompleteShape, SdsAddressAutocompleteSize, SdsAddressExtraContext, SdsAddressExtraPosition, SdsAddressLocateFn, SdsAddressSearchFn, SdsAddressSuggestion, SdsAllergen, SdsAvatarShape, SdsAvatarStatus, SdsBadgeSize, SdsBadgeVariant, SdsBarOrientation, SdsBarSort, SdsBulkBarPosition, SdsButtonShape, SdsButtonSize, SdsButtonVariant, SdsCardVariant, SdsChartAnnotation, SdsChartConfig, SdsChartGrid, SdsChartLabels, SdsChartLegend, SdsChartPointEvent, SdsChartReferenceBand, SdsChartReferenceLine, SdsChartScale, SdsChartSeries, SdsChartStack, SdsChartTone, SdsChartTooltipContext, SdsChartTooltipRow, SdsChartXType, SdsCheckboxSize, SdsChecklistStatus, SdsChipOption, SdsChipSize, SdsCropRect, SdsDatePickerSize, SdsDateRange, SdsDateRangePickerSize, SdsDateRangePreset, SdsDonutLegendValue, SdsDonutSort, SdsDonutVariant, SdsEnvBannerEnv, SdsFileDropAppearance, SdsFileRejection, SdsFileRejectionReason, SdsHeatmapScheme, SdsIconName, SdsIconSize, SdsImageCropperBlobOptions, SdsImageCropperShape, SdsInputAppearance, SdsInputNumberAppearance, SdsInputNumberButtonLayout, SdsInputNumberCurrencyDisplay, SdsInputNumberMode, SdsInputNumberSize, SdsInputShape, SdsInputSize, SdsInputType, SdsKpiAppearance, SdsKpiChangeText, SdsKpiDeltaMode, SdsKpiSize, SdsLanguageOption, SdsLanguageSwitcherAlign, SdsLanguageSwitcherAppearance, SdsLanguageSwitcherDirection, SdsLineCurve, SdsLineMarkers, SdsLocalizedInputSize, SdsLocalizedValue, SdsMenuAction, SdsMenuAlign, SdsMenuEntry, SdsMenuItemTone, SdsMenuSeparator, SdsMultiSelectDisplay, SdsMultiSelectSize, SdsNavItemBadgeTone, SdsNumberFormat, SdsOtpInputSize, SdsPaginatorSize, SdsPaginatorState, SdsPhoneCountry, SdsPhoneInputSize, SdsPhoneValue, SdsRadioSize, SdsScoreSize, SdsScoreTier, SdsScoreVariant, SdsSearchAppearance, SdsSearchItem, SdsSegmentedOption, SdsSegmentedSize, SdsSelectAppearance, SdsSelectEmptyContext, SdsSelectFooterContext, SdsSelectOptionContext, SdsSelectSize, SdsShellBackground, SdsSidebarAppearance, SdsSortOrder, SdsSortableAppearance, SdsSortableItemContext, SdsSortableReorderEvent, SdsSparklineSummaryText, SdsSparklineVariant, SdsStatusTileState, SdsTabValue, SdsTableCellCommitEvent, SdsTableCellContext, SdsTableCellErrors, SdsTableColumn, SdsTableEditTrigger, SdsTableEditor, SdsTableEmptyContext, SdsTableHeaderContext, SdsTableLazyEvent, SdsTableRowExpansionContext, SdsTableSelectOption, SdsTableSize, SdsTableSortEvent, SdsTabsVariant, SdsTextareaAppearance, SdsTextareaResize, SdsTextareaSize, SdsTheme, SdsThemeMode, SdsThemeToggleAppearance, SdsTimeInputAppearance, SdsTimeInputSize, SdsToast, SdsToastKind, SdsToggleSwitchSize, SdsTopbarAppearance, SdsTreemapNode, SdsTrendDirection, SdsTriState, SdsTriStateChipSize, SdsUiPrefs, SdsUserMenuAlign, SdsUserMenuAppearance, SdsXFormat, SdsXValue };
5371
+ export { SDS_ALLERGENS, SDS_ALLERGEN_ICONS, SDS_ALLERGEN_LABELS_EN, SDS_CHART_CONFIG, SDS_CHART_LABELS_EN, SDS_ICONS, SDS_PHONE_COUNTRIES, SDS_THEME_STORAGE_KEY, SDS_UI_PREF_LANG_PARAM, SDS_UI_PREF_THEME_PARAM, SdsAccordion, SdsAccordionContent, SdsAccordionHeader, SdsAccordionPanel, SdsAccordionStore, SdsAddressAutocomplete, SdsAddressExtra, SdsAllergenIcon, SdsAvatar, SdsBadge, SdsBulkBar, SdsButton, SdsCalendar, SdsCard, SdsCheckbox, SdsChecklistRow, SdsChip, SdsChipGroup, SdsDatePicker, SdsDateRangePicker, SdsEnvBanner, SdsFileDrop, SdsIcon, SdsImageCropper, SdsInput, SdsInputNumber, SdsLanguageSwitcher, SdsLocalizedInput, SdsMenu, SdsMenuItem, SdsMenuTrigger, SdsMultiSelect, SdsNavGroup, SdsNavItem, SdsOtpInput, SdsPaginator, SdsPhoneInput, SdsRadio, SdsRangeCalendar, SdsScore, SdsSearchCommand, SdsSegmented, SdsSelect, SdsSelectEmpty, SdsSelectFooter, SdsSelectOption, SdsShell, SdsSidebar, SdsSortableHandle, SdsSortableItem, SdsSortableList, SdsStatusTile, SdsTab, SdsTabList, SdsTabPanel, SdsTabPanels, SdsTable, SdsTableCell, SdsTableEmpty, SdsTableHeader, SdsTableRowExpansion, SdsTabs, SdsTabsStore, SdsTextarea, SdsThemeService, SdsThemeToggle, SdsTimeInput, SdsToastHost, SdsToastService, SdsToggleSwitch, SdsTopbar, SdsTriStateChip, SdsUserMenu, SidebarStore, addDays, addMonths, addMonthsKeepDay, appendUiPrefs, diffInDays, formatDateRange, formatDdMmYyyy, formatHhMm, isOutOfRange, isSameDay, isSameRange, isSdsThemeMode, isoDay, pad2, provideSdsCharts, readUiPrefs, sdsFileMatchesAccept, sdsFormatBytes, sdsFormatNational, sdsLastDays, sdsLastMonths, sdsMatchDialCode, sdsNormalizeSignificant, startOfDay, startOfMonth, stripUiPrefs };
5372
+ export type { SdsAccordionActive, SdsAccordionValue, SdsAddressAutocompleteAppearance, SdsAddressAutocompleteShape, SdsAddressAutocompleteSize, SdsAddressExtraContext, SdsAddressExtraPosition, SdsAddressLocateFn, SdsAddressSearchFn, SdsAddressSuggestion, SdsAllergen, SdsAvatarShape, SdsAvatarStatus, SdsBadgeSize, SdsBadgeVariant, SdsBulkBarPosition, SdsButtonShape, SdsButtonSize, SdsButtonVariant, SdsCardVariant, SdsChartConfig, SdsChartLabels, SdsCheckboxSize, SdsChecklistStatus, SdsChipOption, SdsChipSize, SdsCropRect, SdsDatePickerSize, SdsDateRange, SdsDateRangePickerSize, SdsDateRangePreset, SdsEnvBannerEnv, SdsFileDropAppearance, SdsFileRejection, SdsFileRejectionReason, SdsIconName, SdsIconSize, SdsImageCropperBlobOptions, SdsImageCropperShape, SdsInputAppearance, SdsInputNumberAppearance, SdsInputNumberButtonLayout, SdsInputNumberCurrencyDisplay, SdsInputNumberMode, SdsInputNumberSize, SdsInputShape, SdsInputSize, SdsInputType, SdsKpiChangeText, SdsLanguageOption, SdsLanguageSwitcherAlign, SdsLanguageSwitcherAppearance, SdsLanguageSwitcherDirection, SdsLocalizedInputSize, SdsLocalizedValue, SdsMenuAction, SdsMenuAlign, SdsMenuEntry, SdsMenuItemTone, SdsMenuSeparator, SdsMultiSelectDisplay, SdsMultiSelectSize, SdsNavItemBadgeTone, SdsOtpInputSize, SdsPaginatorSize, SdsPaginatorState, SdsPhoneCountry, SdsPhoneInputSize, SdsPhoneValue, SdsRadioSize, SdsScoreSize, SdsScoreTier, SdsScoreVariant, SdsSearchAppearance, SdsSearchItem, SdsSegmentedOption, SdsSegmentedSize, SdsSelectAppearance, SdsSelectEmptyContext, SdsSelectFooterContext, SdsSelectOptionContext, SdsSelectSize, SdsShellBackground, SdsSidebarAppearance, SdsSortOrder, SdsSortableAppearance, SdsSortableItemContext, SdsSortableReorderEvent, SdsSparklineSummaryText, SdsStatusTileState, SdsTabValue, SdsTableCellCommitEvent, SdsTableCellContext, SdsTableCellErrors, SdsTableColumn, SdsTableEditTrigger, SdsTableEditor, SdsTableEmptyContext, SdsTableHeaderContext, SdsTableLazyEvent, SdsTableRowExpansionContext, SdsTableSelectOption, SdsTableSize, SdsTableSortEvent, SdsTabsVariant, SdsTextareaAppearance, SdsTextareaResize, SdsTextareaSize, SdsTheme, SdsThemeMode, SdsThemeToggleAppearance, SdsTimeInputAppearance, SdsTimeInputSize, SdsToast, SdsToastKind, SdsToggleSwitchSize, SdsTopbarAppearance, SdsTrendDirection, SdsTriState, SdsTriStateChipSize, SdsUiPrefs, SdsUserMenuAlign, SdsUserMenuAppearance };