@pecb-ui/components 1.1.13 → 1.1.15

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
@@ -7,7 +7,7 @@ import { ControlValueAccessor } from '@angular/forms';
7
7
  import * as _pecb_ui_components from '@pecb-ui/components';
8
8
  import { Observable } from 'rxjs';
9
9
 
10
- type ButtonVariant = 'primary' | 'primary-outline' | 'primary-2' | 'primary-2-outline' | 'neutral' | 'neutral-outline' | 'secondary' | 'text' | 'text-muted' | 'text-brand' | 'destructive' | 'destructive-outline';
10
+ type ButtonVariant = 'primary' | 'primary-outline' | 'primary-2' | 'primary-2-outline' | 'neutral' | 'neutral-outline' | 'secondary' | 'text' | 'text-muted' | 'text-brand' | 'success' | 'destructive' | 'destructive-outline';
11
11
  type ButtonSize = 'sm' | 'md' | 'lg' | 'xl';
12
12
  type ButtonIconStyle = 'none' | 'leading' | 'trailing' | 'icon-only';
13
13
  declare class ButtonComponent {
@@ -2128,7 +2128,7 @@ declare class ConfirmationComponent implements OnDestroy {
2128
2128
  }
2129
2129
 
2130
2130
  type AlertType = 'info' | 'success' | 'warning' | 'error';
2131
- type AlertVariant = 'banner' | 'filled';
2131
+ type AlertVariant = 'banner' | 'filled' | 'callout';
2132
2132
  declare class AlertComponent implements OnDestroy {
2133
2133
  type: _angular_core.InputSignal<AlertType>;
2134
2134
  variant: _angular_core.InputSignal<AlertVariant>;
@@ -2437,14 +2437,14 @@ declare class TooltipDirective implements OnDestroy {
2437
2437
  static ɵdir: _angular_core.ɵɵDirectiveDeclaration<TooltipDirective, "[pecbTooltip]", never, { "pecbTooltip": { "alias": "pecbTooltip"; "required": false; "isSignal": true; }; "tooltipTitle": { "alias": "tooltipTitle"; "required": false; "isSignal": true; }; "tooltipTheme": { "alias": "tooltipTheme"; "required": false; "isSignal": true; }; "tooltipPosition": { "alias": "tooltipPosition"; "required": false; "isSignal": true; }; "tooltipTrigger": { "alias": "tooltipTrigger"; "required": false; "isSignal": true; }; "tooltipPrimaryCta": { "alias": "tooltipPrimaryCta"; "required": false; "isSignal": true; }; "tooltipSecondaryCta": { "alias": "tooltipSecondaryCta"; "required": false; "isSignal": true; }; }, { "tooltipPrimaryCtaClick": "tooltipPrimaryCtaClick"; "tooltipSecondaryCtaClick": "tooltipSecondaryCtaClick"; }, never, never, true, never>;
2438
2438
  }
2439
2439
 
2440
- type MetricsCardVariation = '1' | '2' | '3' | '4' | '5' | '6';
2440
+ type MetricsCardVariation = '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8';
2441
2441
  type MetricsCardType = 'data+cta' | 'data-only';
2442
2442
  type MetricsCardOrientation = 'left-aligned' | 'center';
2443
2443
  type MetricsCardBadgeStatus = 'success' | 'warning' | 'error' | 'info';
2444
- type MetricsCardIconBg = 'white' | 'pending' | 'success' | 'error' | 'info' | 'purple';
2444
+ type MetricsCardIconBg = 'white' | 'gray' | 'pending' | 'success' | 'error' | 'info' | 'purple';
2445
2445
  declare class MetricsCardComponent {
2446
2446
  private sanitizer;
2447
- /** Layout variation (1–6) matching the Figma design */
2447
+ /** Layout variation (1–8) matching the Figma design; 7 is the member-dashboard enroll card, 8 the compact stat tile (value → label, small icon top-right) */
2448
2448
  variation: _angular_core.InputSignal<MetricsCardVariation>;
2449
2449
  /** Whether to render a CTA button/link */
2450
2450
  type: _angular_core.InputSignal<MetricsCardType>;
@@ -2483,7 +2483,7 @@ declare class MetricsCardComponent {
2483
2483
  ctaClicked: _angular_core.OutputEmitterRef<void>;
2484
2484
  safeIconSvg: _angular_core.Signal<_angular_platform_browser.SafeHtml | null>;
2485
2485
  get hostClasses(): string;
2486
- /** Footer CTA renders for variations 2, 3, 4 (left-aligned) and 6 (center) */
2486
+ /** Footer CTA renders for variations 2, 3, 4, 8 (left-aligned) and 6 (center) */
2487
2487
  get showFooterCta(): boolean;
2488
2488
  /** Inline CTA link renders for variations 1 and 5 */
2489
2489
  get showInlineCta(): boolean;
@@ -2498,6 +2498,495 @@ declare class MetricsCardComponent {
2498
2498
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<MetricsCardComponent, "pecb-metrics-card", never, { "variation": { "alias": "variation"; "required": false; "isSignal": true; }; "type": { "alias": "type"; "required": false; "isSignal": true; }; "orientation": { "alias": "orientation"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "hasBadge": { "alias": "hasBadge"; "required": false; "isSignal": true; }; "badgeText": { "alias": "badgeText"; "required": false; "isSignal": true; }; "badgeStatus": { "alias": "badgeStatus"; "required": false; "isSignal": true; }; "hasDescription": { "alias": "hasDescription"; "required": false; "isSignal": true; }; "description": { "alias": "description"; "required": false; "isSignal": true; }; "ctaText": { "alias": "ctaText"; "required": false; "isSignal": true; }; "hasIcon": { "alias": "hasIcon"; "required": false; "isSignal": true; }; "iconSvg": { "alias": "iconSvg"; "required": false; "isSignal": true; }; "iconBg": { "alias": "iconBg"; "required": false; "isSignal": true; }; "date": { "alias": "date"; "required": false; "isSignal": true; }; "subtext": { "alias": "subtext"; "required": false; "isSignal": true; }; }, { "ctaClicked": "ctaClicked"; }, never, never, true, never>;
2499
2499
  }
2500
2500
 
2501
+ /**
2502
+ * Badge variant type.
2503
+ * - `dot`: small 6px red dot indicator
2504
+ * - `count`: numbered badge (default or small size)
2505
+ * - `status`: colored dot + text label
2506
+ * - `soft`: dot-less pill — tinted background + colored text (uses `status` for the tone)
2507
+ * - `ribbon`: colored tag with bottom-right arrow fold
2508
+ */
2509
+ type BadgeVariant = 'dot' | 'count' | 'status' | 'soft' | 'ribbon';
2510
+ /**
2511
+ * Count badge size.
2512
+ * - `default`: 20px height, 14px font
2513
+ * - `small`: 14px height, 12px font
2514
+ */
2515
+ type BadgeSize = 'default' | 'small';
2516
+ /**
2517
+ * Status badge type — determines the dot color.
2518
+ */
2519
+ type BadgeStatus = 'success' | 'error' | 'default' | 'processing' | 'warning';
2520
+ /**
2521
+ * Ribbon badge color.
2522
+ */
2523
+ type RibbonColor = 'blue' | 'orange' | 'gray' | 'red' | 'purple' | 'green' | 'black';
2524
+ /**
2525
+ * Badge component matching the PECB Figma design system.
2526
+ *
2527
+ * Three sub-types: Basic (dot/count), Status (dot + label), Ribbon (colored tag).
2528
+ *
2529
+ * @example
2530
+ * ```html
2531
+ * <!-- Dot indicator -->
2532
+ * <pecb-badge variant="dot"></pecb-badge>
2533
+ *
2534
+ * <!-- Count badge -->
2535
+ * <pecb-badge variant="count" [count]="21"></pecb-badge>
2536
+ * <pecb-badge variant="count" [count]="5" size="small"></pecb-badge>
2537
+ *
2538
+ * <!-- Status badge -->
2539
+ * <pecb-badge variant="status" status="success"></pecb-badge>
2540
+ * <pecb-badge variant="status" status="error" label="Failed"></pecb-badge>
2541
+ *
2542
+ * <!-- Ribbon badge -->
2543
+ * <pecb-badge variant="ribbon" ribbonColor="blue" text="New"></pecb-badge>
2544
+ * ```
2545
+ */
2546
+ declare class BadgeComponent {
2547
+ /** Unique element ID */
2548
+ id: _angular_core.InputSignal<string>;
2549
+ /** Badge variant */
2550
+ variant: _angular_core.InputSignal<BadgeVariant>;
2551
+ /** Count number (for variant='count') */
2552
+ count: _angular_core.InputSignal<number>;
2553
+ /** Max count before showing "99+" (for variant='count') */
2554
+ maxCount: _angular_core.InputSignal<number>;
2555
+ /** Count badge size */
2556
+ size: _angular_core.InputSignal<BadgeSize>;
2557
+ /** Status type (for variant='status') */
2558
+ status: _angular_core.InputSignal<BadgeStatus>;
2559
+ /** Label text (for variant='status'). Defaults to the status name. */
2560
+ label: _angular_core.InputSignal<string>;
2561
+ /** Whether to show the label text (for variant='status') */
2562
+ showLabel: _angular_core.InputSignal<boolean>;
2563
+ /** Ribbon color (for variant='ribbon') */
2564
+ ribbonColor: _angular_core.InputSignal<RibbonColor>;
2565
+ /** Ribbon/badge text (for variant='ribbon') */
2566
+ text: _angular_core.InputSignal<string>;
2567
+ /** Aria-label for the dot indicator (variant='dot'). */
2568
+ notificationAriaLabel: _angular_core.InputSignal<string>;
2569
+ /** Word appended after the count in the count badge's aria-label (variant='count'). */
2570
+ notificationsLabel: _angular_core.InputSignal<string>;
2571
+ /** Formatted count display */
2572
+ displayCount: _angular_core.Signal<string>;
2573
+ /** Status label — uses explicit label or falls back to status name */
2574
+ statusLabel: _angular_core.Signal<string>;
2575
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<BadgeComponent, never>;
2576
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<BadgeComponent, "pecb-badge", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "count": { "alias": "count"; "required": false; "isSignal": true; }; "maxCount": { "alias": "maxCount"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "status": { "alias": "status"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "showLabel": { "alias": "showLabel"; "required": false; "isSignal": true; }; "ribbonColor": { "alias": "ribbonColor"; "required": false; "isSignal": true; }; "text": { "alias": "text"; "required": false; "isSignal": true; }; "notificationAriaLabel": { "alias": "notificationAriaLabel"; "required": false; "isSignal": true; }; "notificationsLabel": { "alias": "notificationsLabel"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
2577
+ }
2578
+
2579
+ /** Tint applied to the head icon (and mapped to the status pill colour). */
2580
+ type CredentialCardTone = 'success' | 'warning' | 'error' | 'neutral';
2581
+ /** Plain label/value line in the card body (e.g. Issued / Expires). */
2582
+ interface CredentialCardMetaRow {
2583
+ label: string;
2584
+ value: string;
2585
+ }
2586
+ /** Progress line with a bar and an inline "+" action (e.g. earned credits, paid fees). */
2587
+ interface CredentialCardProgress {
2588
+ /** Echoed back on (progressAction) */
2589
+ id: string;
2590
+ label: string;
2591
+ /** Right-aligned counter text, e.g. "30/90" */
2592
+ valueText: string;
2593
+ /** 0-100; colours the bar: 100 green, >=50 orange, below red */
2594
+ percent: number;
2595
+ /** Disables the "+" button (e.g. requirement already met) */
2596
+ actionDisabled?: boolean;
2597
+ actionAriaLabel?: string;
2598
+ }
2599
+ /** Footer action button. */
2600
+ interface CredentialCardAction {
2601
+ /** Echoed back on (actionClick) */
2602
+ id: string;
2603
+ label: string;
2604
+ /** 'primary' = solid dark, 'ghost' = outline; defaults to 'ghost' */
2605
+ variant?: 'primary' | 'ghost';
2606
+ /** Raw SVG string rendered before the label */
2607
+ icon?: string;
2608
+ disabled?: boolean;
2609
+ }
2610
+ /**
2611
+ * Credential card — a summary tile for a credential/qualification.
2612
+ *
2613
+ * Composes the head (award icon + status pill + title), a digital-badge row with a Claim/View button, meta rows, progress bars with inline "+" actions, a
2614
+ * tinted notice (expired/suspended/revoked/pending reasons — supports <b> markup),
2615
+ * footer action buttons, an optional centered link and an optional muted footnote.
2616
+ * Purely presentational: every interaction surfaces through outputs.
2617
+ */
2618
+ declare class CredentialCardComponent {
2619
+ private sanitizer;
2620
+ /** Credential title */
2621
+ title: _angular_core.InputSignal<string>;
2622
+ /** Head icon tint + status pill colour */
2623
+ tone: _angular_core.InputSignal<CredentialCardTone>;
2624
+ /** Status pill text; pill hidden when empty */
2625
+ statusLabel: _angular_core.InputSignal<string>;
2626
+ /** Show the badge (digital badge) row */
2627
+ showBadge: _angular_core.InputSignal<boolean>;
2628
+ /** Badge row label */
2629
+ badgeLabel: _angular_core.InputSignal<string>;
2630
+ /** Whether the digital badge has been claimed */
2631
+ badgeClaimed: _angular_core.InputSignal<boolean>;
2632
+ claimedLabel: _angular_core.InputSignal<string>;
2633
+ notClaimedLabel: _angular_core.InputSignal<string>;
2634
+ /** Claim/View button text; button hidden when empty */
2635
+ badgeButtonLabel: _angular_core.InputSignal<string>;
2636
+ /** Label/value lines (Issued, Expires, ...) */
2637
+ metaRows: _angular_core.InputSignal<CredentialCardMetaRow[]>;
2638
+ /** Progress lines (credits, fees, ...) */
2639
+ progressRows: _angular_core.InputSignal<CredentialCardProgress[]>;
2640
+ /** Notice text (supports <b>); hidden when empty */
2641
+ noticeText: _angular_core.InputSignal<string>;
2642
+ /** Notice tint */
2643
+ noticeTone: _angular_core.InputSignal<"error" | "warning">;
2644
+ /** Footer buttons */
2645
+ actions: _angular_core.InputSignal<CredentialCardAction[]>;
2646
+ /** 'row' = side by side, 'stack' = full-width column */
2647
+ actionsLayout: _angular_core.InputSignal<"row" | "stack">;
2648
+ /** Centered text link under the actions (e.g. a policy link); hidden when empty */
2649
+ linkLabel: _angular_core.InputSignal<string>;
2650
+ /** Muted centered footnote (e.g. an in-progress note); hidden when empty */
2651
+ footnote: _angular_core.InputSignal<string>;
2652
+ /** Claim/View button clicked */
2653
+ badgeAction: _angular_core.OutputEmitterRef<void>;
2654
+ /** A progress row's "+" clicked — emits the row id */
2655
+ progressAction: _angular_core.OutputEmitterRef<string>;
2656
+ /** A footer action clicked — emits the action id */
2657
+ actionClick: _angular_core.OutputEmitterRef<string>;
2658
+ /** The centered link clicked */
2659
+ linkClick: _angular_core.OutputEmitterRef<void>;
2660
+ readonly awardIcon: _angular_platform_browser.SafeHtml;
2661
+ readonly plusIcon: _angular_platform_browser.SafeHtml;
2662
+ readonly safeNotice: _angular_core.Signal<_angular_platform_browser.SafeHtml | null>;
2663
+ readonly pillStatus: _angular_core.Signal<BadgeStatus>;
2664
+ clampPercent(percent: number): number;
2665
+ barToneClass(percent: number): string;
2666
+ actionClass(action: CredentialCardAction): string;
2667
+ safeSvg(svg: string | undefined): _angular_platform_browser.SafeHtml | null;
2668
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<CredentialCardComponent, never>;
2669
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<CredentialCardComponent, "pecb-credential-card", never, { "title": { "alias": "title"; "required": false; "isSignal": true; }; "tone": { "alias": "tone"; "required": false; "isSignal": true; }; "statusLabel": { "alias": "statusLabel"; "required": false; "isSignal": true; }; "showBadge": { "alias": "showBadge"; "required": false; "isSignal": true; }; "badgeLabel": { "alias": "badgeLabel"; "required": false; "isSignal": true; }; "badgeClaimed": { "alias": "badgeClaimed"; "required": false; "isSignal": true; }; "claimedLabel": { "alias": "claimedLabel"; "required": false; "isSignal": true; }; "notClaimedLabel": { "alias": "notClaimedLabel"; "required": false; "isSignal": true; }; "badgeButtonLabel": { "alias": "badgeButtonLabel"; "required": false; "isSignal": true; }; "metaRows": { "alias": "metaRows"; "required": false; "isSignal": true; }; "progressRows": { "alias": "progressRows"; "required": false; "isSignal": true; }; "noticeText": { "alias": "noticeText"; "required": false; "isSignal": true; }; "noticeTone": { "alias": "noticeTone"; "required": false; "isSignal": true; }; "actions": { "alias": "actions"; "required": false; "isSignal": true; }; "actionsLayout": { "alias": "actionsLayout"; "required": false; "isSignal": true; }; "linkLabel": { "alias": "linkLabel"; "required": false; "isSignal": true; }; "footnote": { "alias": "footnote"; "required": false; "isSignal": true; }; }, { "badgeAction": "badgeAction"; "progressAction": "progressAction"; "actionClick": "actionClick"; "linkClick": "linkClick"; }, never, never, true, never>;
2670
+ }
2671
+
2672
+ /**
2673
+ * Payment plan card — one selectable payment option (e.g. "Pay annually" vs
2674
+ * "Pay full cycle"): centered title/description, applied-benefit chips, an
2675
+ * old/new price pair, a tinted bullet box and a full-width action button.
2676
+ * `emphasized` renders the dark-border "best value" treatment with an optional
2677
+ * corner badge (e.g. "Save $65").
2678
+ */
2679
+ declare class PaymentPlanCardComponent {
2680
+ private sanitizer;
2681
+ title: _angular_core.InputSignal<string>;
2682
+ /** Short line under the title */
2683
+ description: _angular_core.InputSignal<string>;
2684
+ /** Corner badge text (e.g. "Save $65"); hidden when empty */
2685
+ badgeText: _angular_core.InputSignal<string>;
2686
+ /** Small check-prefixed chips above the price (e.g. "Cap Applied") */
2687
+ appliedChips: _angular_core.InputSignal<string[]>;
2688
+ /** Struck-through price, hidden when empty (e.g. "$780.00") */
2689
+ oldPriceText: _angular_core.InputSignal<string>;
2690
+ /** Highlighted price (e.g. "$585.00") */
2691
+ priceText: _angular_core.InputSignal<string>;
2692
+ /** Muted line under the price */
2693
+ subText: _angular_core.InputSignal<string>;
2694
+ /** Tinted box bullet lines — support <b> markup */
2695
+ bullets: _angular_core.InputSignal<string[]>;
2696
+ buttonLabel: _angular_core.InputSignal<string>;
2697
+ buttonVariant: _angular_core.InputSignal<"primary" | "ghost">;
2698
+ buttonDisabled: _angular_core.InputSignal<boolean>;
2699
+ /** Dark-border "best value" treatment */
2700
+ emphasized: _angular_core.InputSignal<boolean>;
2701
+ action: _angular_core.OutputEmitterRef<void>;
2702
+ readonly safeBullets: _angular_core.Signal<_angular_platform_browser.SafeHtml[]>;
2703
+ get cardClasses(): string;
2704
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<PaymentPlanCardComponent, never>;
2705
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<PaymentPlanCardComponent, "pecb-payment-plan-card", never, { "title": { "alias": "title"; "required": false; "isSignal": true; }; "description": { "alias": "description"; "required": false; "isSignal": true; }; "badgeText": { "alias": "badgeText"; "required": false; "isSignal": true; }; "appliedChips": { "alias": "appliedChips"; "required": false; "isSignal": true; }; "oldPriceText": { "alias": "oldPriceText"; "required": false; "isSignal": true; }; "priceText": { "alias": "priceText"; "required": false; "isSignal": true; }; "subText": { "alias": "subText"; "required": false; "isSignal": true; }; "bullets": { "alias": "bullets"; "required": false; "isSignal": true; }; "buttonLabel": { "alias": "buttonLabel"; "required": false; "isSignal": true; }; "buttonVariant": { "alias": "buttonVariant"; "required": false; "isSignal": true; }; "buttonDisabled": { "alias": "buttonDisabled"; "required": false; "isSignal": true; }; "emphasized": { "alias": "emphasized"; "required": false; "isSignal": true; }; }, { "action": "action"; }, never, never, true, never>;
2706
+ }
2707
+
2708
+ /** One line of the payment summary. */
2709
+ interface PaymentSummaryRow {
2710
+ label: string;
2711
+ valueText: string;
2712
+ /** 'success' tints the value green (e.g. a discount) */
2713
+ highlight?: 'success' | 'none';
2714
+ /** Bold/large emphasis (e.g. the final total) */
2715
+ emphasis?: boolean;
2716
+ }
2717
+ /**
2718
+ * Payment summary panel — totals rows, an optional savings note, projected
2719
+ * content (e.g. a tax breakdown) and a full-width pay button. Presentational;
2720
+ * make it sticky from the consumer when needed.
2721
+ */
2722
+ declare class PaymentSummaryComponent {
2723
+ heading: _angular_core.InputSignal<string>;
2724
+ rows: _angular_core.InputSignal<PaymentSummaryRow[]>;
2725
+ /** Muted line under the rows (e.g. "You save $65.00"); hidden when empty */
2726
+ saveNote: _angular_core.InputSignal<string>;
2727
+ buttonLabel: _angular_core.InputSignal<string>;
2728
+ buttonDisabled: _angular_core.InputSignal<boolean>;
2729
+ action: _angular_core.OutputEmitterRef<void>;
2730
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<PaymentSummaryComponent, never>;
2731
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<PaymentSummaryComponent, "pecb-payment-summary", never, { "heading": { "alias": "heading"; "required": false; "isSignal": true; }; "rows": { "alias": "rows"; "required": false; "isSignal": true; }; "saveNote": { "alias": "saveNote"; "required": false; "isSignal": true; }; "buttonLabel": { "alias": "buttonLabel"; "required": false; "isSignal": true; }; "buttonDisabled": { "alias": "buttonDisabled"; "required": false; "isSignal": true; }; }, { "action": "action"; }, never, ["*"], true, never>;
2732
+ }
2733
+
2734
+ /** One period checkbox of a schedule card. Fully controlled by the consumer. */
2735
+ interface PaymentScheduleCardPeriod {
2736
+ /** Echoed back on (periodToggle) */
2737
+ id: string | number;
2738
+ label: string;
2739
+ /** Controlled checked state */
2740
+ checked?: boolean;
2741
+ /** Already paid — checked and locked */
2742
+ paid?: boolean;
2743
+ /** Payment already initiated (open invoice) — locked and highlighted */
2744
+ pending?: boolean;
2745
+ disabled?: boolean;
2746
+ /** Tooltip (e.g. why this period is locked, or its invoice reference) */
2747
+ hint?: string;
2748
+ /** Small badge after the label (e.g. "Free") */
2749
+ badge?: string;
2750
+ }
2751
+ type PaymentScheduleCardTone = 'success' | 'warning' | 'error' | 'neutral';
2752
+ /** Meta column of the card header (e.g. Obtained in / Expires). */
2753
+ interface PaymentScheduleCardMeta {
2754
+ label: string;
2755
+ value: string;
2756
+ }
2757
+ /** Quick action rendered in the expanded body. */
2758
+ interface PaymentScheduleCardAction {
2759
+ id: string;
2760
+ label: string;
2761
+ variant?: 'primary' | 'ghost';
2762
+ disabled?: boolean;
2763
+ }
2764
+ /**
2765
+ * Payment schedule card — a collapsible per-item card (e.g. one credential)
2766
+ * with status-tinted border, meta columns, period checkboxes, quick actions
2767
+ * and a per-item total. Selection state is fully controlled by the consumer:
2768
+ * the card only reports (periodToggle) and never decides eligibility itself.
2769
+ */
2770
+ declare class PaymentScheduleCardComponent {
2771
+ title: _angular_core.InputSignal<string>;
2772
+ /** Small chip next to the title (e.g. "Cycle 1") */
2773
+ tagLabel: _angular_core.InputSignal<string>;
2774
+ /** Border/status tint */
2775
+ tone: _angular_core.InputSignal<PaymentScheduleCardTone>;
2776
+ /** Leading round status icon tinted by tone */
2777
+ showStatusIcon: _angular_core.InputSignal<boolean>;
2778
+ /** Status pill text (e.g. "Overdue"); hidden when empty */
2779
+ statusLabel: _angular_core.InputSignal<string>;
2780
+ meta: _angular_core.InputSignal<PaymentScheduleCardMeta[]>;
2781
+ periods: _angular_core.InputSignal<PaymentScheduleCardPeriod[]>;
2782
+ actions: _angular_core.InputSignal<PaymentScheduleCardAction[]>;
2783
+ /** Per-item amount shown in the expanded body (e.g. "$260.00"); hidden when empty */
2784
+ totalText: _angular_core.InputSignal<string>;
2785
+ /** Expanded body heading (e.g. "Payment Options"); hidden when empty */
2786
+ bodyTitle: _angular_core.InputSignal<string>;
2787
+ /** Small label above the amount (e.g. "Amount") */
2788
+ amountLabel: _angular_core.InputSignal<string>;
2789
+ /** Line above the period checkboxes (e.g. "Years (select) - $130/year") */
2790
+ periodsLabel: _angular_core.InputSignal<string>;
2791
+ /** Muted hint under the periods (e.g. "Select all 3 years to unlock a 10% discount") */
2792
+ bodyHint: _angular_core.InputSignal<string>;
2793
+ /** Suffix appended to paid period labels (e.g. " · Included") */
2794
+ paidSuffix: _angular_core.InputSignal<string>;
2795
+ /** Collapsible open state; supports [(expanded)] */
2796
+ expanded: _angular_core.ModelSignal<boolean>;
2797
+ collapsible: _angular_core.InputSignal<boolean>;
2798
+ periodToggle: _angular_core.OutputEmitterRef<{
2799
+ id: string | number;
2800
+ checked: boolean;
2801
+ }>;
2802
+ actionClick: _angular_core.OutputEmitterRef<string>;
2803
+ toggleExpanded(): void;
2804
+ onPeriodChange(period: PaymentScheduleCardPeriod, checked: boolean): void;
2805
+ isChecked(period: PaymentScheduleCardPeriod): boolean;
2806
+ isLocked(period: PaymentScheduleCardPeriod): boolean;
2807
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<PaymentScheduleCardComponent, never>;
2808
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<PaymentScheduleCardComponent, "pecb-payment-schedule-card", never, { "title": { "alias": "title"; "required": false; "isSignal": true; }; "tagLabel": { "alias": "tagLabel"; "required": false; "isSignal": true; }; "tone": { "alias": "tone"; "required": false; "isSignal": true; }; "showStatusIcon": { "alias": "showStatusIcon"; "required": false; "isSignal": true; }; "statusLabel": { "alias": "statusLabel"; "required": false; "isSignal": true; }; "meta": { "alias": "meta"; "required": false; "isSignal": true; }; "periods": { "alias": "periods"; "required": false; "isSignal": true; }; "actions": { "alias": "actions"; "required": false; "isSignal": true; }; "totalText": { "alias": "totalText"; "required": false; "isSignal": true; }; "bodyTitle": { "alias": "bodyTitle"; "required": false; "isSignal": true; }; "amountLabel": { "alias": "amountLabel"; "required": false; "isSignal": true; }; "periodsLabel": { "alias": "periodsLabel"; "required": false; "isSignal": true; }; "bodyHint": { "alias": "bodyHint"; "required": false; "isSignal": true; }; "paidSuffix": { "alias": "paidSuffix"; "required": false; "isSignal": true; }; "expanded": { "alias": "expanded"; "required": false; "isSignal": true; }; "collapsible": { "alias": "collapsible"; "required": false; "isSignal": true; }; }, { "expanded": "expandedChange"; "periodToggle": "periodToggle"; "actionClick": "actionClick"; }, never, never, true, never>;
2809
+ }
2810
+
2811
+ /** One selectable payment period (e.g. a period). */
2812
+ interface PeriodPaymentModalPeriod {
2813
+ /** Echoed back on (selectionChange) */
2814
+ id: string | number;
2815
+ /** e.g. "2026" or "2028 (Renewal)" */
2816
+ label: string;
2817
+ /** Already paid — shown checked and locked */
2818
+ paid?: boolean;
2819
+ /** Payment already initiated (e.g. an open invoice) — locked and highlighted */
2820
+ pending?: boolean;
2821
+ /** Force-disabled regardless of the sequential rule */
2822
+ disabled?: boolean;
2823
+ /** Tooltip shown on the period (e.g. the pending invoice reference) */
2824
+ hint?: string;
2825
+ }
2826
+ /**
2827
+ * Period payment modal — centered dialog to pick sequential payment periods
2828
+ * (e.g. the years to pay for a credential): a period unlocks once the previous
2829
+ * one is paid or selected, with an optional discount note, a primary
2830
+ * "Pay $X now" button and an optional secondary "pay all" action.
2831
+ *
2832
+ * Presentational: amounts are computed by the consumer (backend) and passed in
2833
+ * via `payLabel`; every interaction surfaces through outputs. Rendered in a CDK
2834
+ * overlay like `pecb-confirmation` (same backdrop/escape/focus handling).
2835
+ */
2836
+ declare class PeriodPaymentModalComponent implements OnDestroy {
2837
+ private sanitizer;
2838
+ id: _angular_core.InputSignal<string>;
2839
+ /** Whether the dialog is visible. Supports [(isOpen)]. */
2840
+ isOpen: _angular_core.ModelSignal<boolean>;
2841
+ /** Dialog heading */
2842
+ title: _angular_core.InputSignal<string>;
2843
+ /** Intro line under the title — supports <b> markup */
2844
+ description: _angular_core.InputSignal<string>;
2845
+ /** Selectable periods, in payment order */
2846
+ periods: _angular_core.InputSignal<PeriodPaymentModalPeriod[]>;
2847
+ /** Shows a centered spinner instead of the periods while data loads */
2848
+ loading: _angular_core.InputSignal<boolean>;
2849
+ /**
2850
+ * Sequential selection: a period can only be picked when the previous one is
2851
+ * paid or selected; unselecting a period clears the later ones.
2852
+ */
2853
+ sequential: _angular_core.InputSignal<boolean>;
2854
+ /** Optional tinted note (e.g. the all-years discount) — supports <b> markup */
2855
+ note: _angular_core.InputSignal<string>;
2856
+ /** Primary button label, e.g. "Pay $130.00 now" */
2857
+ payLabel: _angular_core.InputSignal<string>;
2858
+ /** Disables the primary button (e.g. nothing selected) */
2859
+ payDisabled: _angular_core.InputSignal<boolean>;
2860
+ /** Shows a loading state on the primary button */
2861
+ payLoading: _angular_core.InputSignal<boolean>;
2862
+ /** Secondary full-width action label; hidden when empty */
2863
+ payAllLabel: _angular_core.InputSignal<string>;
2864
+ /** Tooltip shown on periods locked by the sequential rule (e.g. "Select periods in order") */
2865
+ lockedHint: _angular_core.InputSignal<string>;
2866
+ /** Accessible label for the close (×) button. Override to localize. */
2867
+ closeAriaLabel: _angular_core.InputSignal<string>;
2868
+ closeOnBackdropClick: _angular_core.InputSignal<boolean>;
2869
+ closeOnEscape: _angular_core.InputSignal<boolean>;
2870
+ /** Selected period ids (excluding already-paid periods), in list order */
2871
+ selectionChange: _angular_core.OutputEmitterRef<(string | number)[]>;
2872
+ /** Primary button clicked */
2873
+ pay: _angular_core.OutputEmitterRef<void>;
2874
+ /** Secondary button clicked */
2875
+ payAll: _angular_core.OutputEmitterRef<void>;
2876
+ closed: _angular_core.OutputEmitterRef<void>;
2877
+ private readonly overlay;
2878
+ private readonly viewContainerRef;
2879
+ private dialogTemplate;
2880
+ private overlayRef;
2881
+ private portal;
2882
+ private subscriptions;
2883
+ private previousActiveElement;
2884
+ readonly selected: _angular_core.WritableSignal<ReadonlySet<string | number>>;
2885
+ readonly safeDescription: _angular_core.Signal<_angular_platform_browser.SafeHtml | null>;
2886
+ readonly safeNote: _angular_core.Signal<_angular_platform_browser.SafeHtml | null>;
2887
+ constructor();
2888
+ ngOnDestroy(): void;
2889
+ get titleId(): string;
2890
+ isChecked(period: PeriodPaymentModalPeriod): boolean;
2891
+ isDisabled(period: PeriodPaymentModalPeriod, index: number): boolean;
2892
+ /** Tooltip for one period: its own hint, or the sequential-lock hint. */
2893
+ hintFor(period: PeriodPaymentModalPeriod, index: number): string | null;
2894
+ toggle(period: PeriodPaymentModalPeriod, index: number, checked: boolean): void;
2895
+ private emitSelection;
2896
+ onPay(): void;
2897
+ onPayAll(): void;
2898
+ close(): void;
2899
+ private openOverlay;
2900
+ private destroyOverlay;
2901
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<PeriodPaymentModalComponent, never>;
2902
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<PeriodPaymentModalComponent, "pecb-period-payment-modal", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "isOpen": { "alias": "isOpen"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "description": { "alias": "description"; "required": false; "isSignal": true; }; "periods": { "alias": "periods"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "sequential": { "alias": "sequential"; "required": false; "isSignal": true; }; "note": { "alias": "note"; "required": false; "isSignal": true; }; "payLabel": { "alias": "payLabel"; "required": false; "isSignal": true; }; "payDisabled": { "alias": "payDisabled"; "required": false; "isSignal": true; }; "payLoading": { "alias": "payLoading"; "required": false; "isSignal": true; }; "payAllLabel": { "alias": "payAllLabel"; "required": false; "isSignal": true; }; "lockedHint": { "alias": "lockedHint"; "required": false; "isSignal": true; }; "closeAriaLabel": { "alias": "closeAriaLabel"; "required": false; "isSignal": true; }; "closeOnBackdropClick": { "alias": "closeOnBackdropClick"; "required": false; "isSignal": true; }; "closeOnEscape": { "alias": "closeOnEscape"; "required": false; "isSignal": true; }; }, { "isOpen": "isOpenChange"; "selectionChange": "selectionChange"; "pay": "pay"; "payAll": "payAll"; "closed": "closed"; }, never, never, true, never>;
2903
+ }
2904
+
2905
+ /**
2906
+ * Outlined form field — a bordered container with the label floating on the
2907
+ * border (fieldset/legend style). Project any control into it: native
2908
+ * input/select/textarea (they are styled borderless inside) or another
2909
+ * component such as `pecb-tag-select`.
2910
+ */
2911
+ declare class OutlinedFieldComponent {
2912
+ label: _angular_core.InputSignal<string>;
2913
+ /** Renders the error border/label colour */
2914
+ error: _angular_core.InputSignal<boolean>;
2915
+ /** Message under the field; shown only when error is true */
2916
+ errorMessage: _angular_core.InputSignal<string>;
2917
+ disabled: _angular_core.InputSignal<boolean>;
2918
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<OutlinedFieldComponent, never>;
2919
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<OutlinedFieldComponent, "pecb-outlined-field", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "error": { "alias": "error"; "required": false; "isSignal": true; }; "errorMessage": { "alias": "errorMessage"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
2920
+ }
2921
+
2922
+ interface TagSelectOption {
2923
+ label: string;
2924
+ value: unknown;
2925
+ disabled?: boolean;
2926
+ }
2927
+ /**
2928
+ * Tag select — a multi-select whose trigger shows the chosen options as
2929
+ * removable chips, with a searchable option menu underneath. Borderless by
2930
+ * design so it can sit inside `pecb-outlined-field`; give it a border via the
2931
+ * host page when used standalone. Implements ControlValueAccessor
2932
+ * (value: unknown[]).
2933
+ */
2934
+ declare class TagSelectComponent implements ControlValueAccessor {
2935
+ private host;
2936
+ options: _angular_core.InputSignal<TagSelectOption[]>;
2937
+ placeholder: _angular_core.InputSignal<string>;
2938
+ searchPlaceholder: _angular_core.InputSignal<string>;
2939
+ /** Empty-results text inside the menu */
2940
+ noResultsText: _angular_core.InputSignal<string>;
2941
+ removeAriaLabel: _angular_core.InputSignal<string>;
2942
+ selectionChange: _angular_core.OutputEmitterRef<unknown[]>;
2943
+ readonly open: _angular_core.WritableSignal<boolean>;
2944
+ readonly query: _angular_core.WritableSignal<string>;
2945
+ readonly selected: _angular_core.WritableSignal<unknown[]>;
2946
+ readonly disabled: _angular_core.WritableSignal<boolean>;
2947
+ private onChange;
2948
+ private onTouched;
2949
+ readonly selectedOptions: _angular_core.Signal<TagSelectOption[]>;
2950
+ readonly filteredOptions: _angular_core.Signal<TagSelectOption[]>;
2951
+ onDocumentClick(event: MouseEvent): void;
2952
+ onEscape(): void;
2953
+ toggleMenu(): void;
2954
+ isSelected(option: TagSelectOption): boolean;
2955
+ toggleOption(option: TagSelectOption): void;
2956
+ removeValue(value: unknown, event: Event): void;
2957
+ onSearch(event: Event): void;
2958
+ private commit;
2959
+ writeValue(value: unknown): void;
2960
+ registerOnChange(fn: (value: unknown[]) => void): void;
2961
+ registerOnTouched(fn: () => void): void;
2962
+ setDisabledState(isDisabled: boolean): void;
2963
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<TagSelectComponent, never>;
2964
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<TagSelectComponent, "pecb-tag-select", never, { "options": { "alias": "options"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "searchPlaceholder": { "alias": "searchPlaceholder"; "required": false; "isSignal": true; }; "noResultsText": { "alias": "noResultsText"; "required": false; "isSignal": true; }; "removeAriaLabel": { "alias": "removeAriaLabel"; "required": false; "isSignal": true; }; }, { "selectionChange": "selectionChange"; }, never, never, true, never>;
2965
+ }
2966
+
2967
+ /**
2968
+ * Form section card — a numbered, collapsible container for one repeatable
2969
+ * form section (e.g. "Activity 1 of 3"): number badge, title, subtitle,
2970
+ * optional remove button and a collapse chevron; the form itself is projected.
2971
+ */
2972
+ declare class FormSectionCardComponent {
2973
+ /** 1-based number shown in the badge */
2974
+ index: _angular_core.InputSignal<number>;
2975
+ title: _angular_core.InputSignal<string>;
2976
+ subtitle: _angular_core.InputSignal<string>;
2977
+ /** Shows the remove (trash) button */
2978
+ removable: _angular_core.InputSignal<boolean>;
2979
+ collapsible: _angular_core.InputSignal<boolean>;
2980
+ removeAriaLabel: _angular_core.InputSignal<string>;
2981
+ toggleAriaLabel: _angular_core.InputSignal<string>;
2982
+ /** Supports [(expanded)] */
2983
+ expanded: _angular_core.ModelSignal<boolean>;
2984
+ removed: _angular_core.OutputEmitterRef<void>;
2985
+ toggle(): void;
2986
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<FormSectionCardComponent, never>;
2987
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<FormSectionCardComponent, "pecb-form-section-card", never, { "index": { "alias": "index"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "subtitle": { "alias": "subtitle"; "required": false; "isSignal": true; }; "removable": { "alias": "removable"; "required": false; "isSignal": true; }; "collapsible": { "alias": "collapsible"; "required": false; "isSignal": true; }; "removeAriaLabel": { "alias": "removeAriaLabel"; "required": false; "isSignal": true; }; "toggleAriaLabel": { "alias": "toggleAriaLabel"; "required": false; "isSignal": true; }; "expanded": { "alias": "expanded"; "required": false; "isSignal": true; }; }, { "expanded": "expandedChange"; "removed": "removed"; }, never, ["*"], true, never>;
2988
+ }
2989
+
2501
2990
  interface FloatButtonAction {
2502
2991
  /** Unique identifier used for tracking and emitting click events */
2503
2992
  id: string;
@@ -5620,39 +6109,6 @@ declare function tryAsync<T>(operation: () => Promise<T>, errorOptions?: ErrorOp
5620
6109
  */
5621
6110
  declare function trySync<T>(operation: () => T, errorOptions?: ErrorOptions): [T, null] | [null, PecbError];
5622
6111
 
5623
- /**
5624
- * All available icon names in the PECB icon library.
5625
- * Use with `<pecb-icon name="icon-name">` for built-in icons.
5626
- */
5627
- type IconName = 'activity' | 'add-square-01' | 'add-square-02' | 'add-square-03' | 'add-square-04' | 'alarm-01' | 'alarm-02' | 'alarm-03' | 'alarm-04' | 'alarm-05' | 'alarm-06' | 'alarm-check' | 'alarm-minus' | 'alarm-off' | 'alarm-plus' | 'alert-circle' | 'alert-square' | 'alert-triangle' | 'align-center' | 'align-down-01' | 'align-down-02' | 'align-horizontal-center-01' | 'align-horizontal-center-02' | 'align-horizontal-center-03' | 'align-justify' | 'align-left' | 'align-left-01' | 'align-left-02' | 'align-right' | 'align-right-01' | 'align-right-02' | 'align-up-01' | 'align-up-02' | 'align-vertical-center-01' | 'align-vertical-center-02' | 'align-vertical-center-03' | 'annotation' | 'annotation-alert' | 'annotation-check' | 'annotation-information' | 'annotation-plus' | 'annotation-typing' | 'annotation-x' | 'atom' | 'attatchment-01' | 'attatchment-02' | 'audio-settings-01' | 'audio-settings-02' | 'bag-01' | 'bag-02' | 'bag-03' | 'bag-04' | 'bag-05' | 'bank' | 'bank-note-01' | 'bank-note-02' | 'bank-note-03' | 'bank-note-04' | 'bank-note-05' | 'bank-note-06' | 'bar-chart-01' | 'bar-chart-02' | 'bar-chart-03' | 'bar-chart-04' | 'bar-chart-05' | 'bar-chart-square-01' | 'bar-chart-square-02' | 'bar-chart-square-03' | 'bar-chart-square-down-01' | 'bar-chart-square-down-02' | 'bar-chart-square-up-01' | 'bar-group-01' | 'bar-group-02' | 'bar-group-03' | 'battery-01' | 'battery-02' | 'battery-03' | 'battery-04' | 'battery-empty' | 'battery-fill-01' | 'battery-fill-02' | 'battery-fill-04' | 'bell-01' | 'bell-02' | 'bell-03' | 'bell-04' | 'bell-off-01' | 'bell-off-02' | 'bell-ringing-01' | 'bell-ringing-02' | 'bell-ringing-03' | 'bell-ringing-04' | 'bezier-01' | 'bezier-02' | 'bluetooth-01' | 'bluetooth-02' | 'bold-01' | 'bold-02' | 'book-01' | 'book-02' | 'book-03' | 'book-04' | 'book-05' | 'book-06' | 'box' | 'brackets' | 'brackets-check' | 'brackets-minus' | 'brackets-plus' | 'brackets-slash' | 'brackets-typing' | 'calculator-01' | 'calculator-02' | 'calendar-01' | 'calendar-02' | 'calendar-03' | 'calendar-04' | 'calendar-05' | 'calendar-06' | 'calendar-07' | 'calendar-check' | 'calendar-minus' | 'calendar-number' | 'calendar-plus' | 'camera-01' | 'camera-02' | 'camera-lens' | 'camera-off' | 'cancel-left' | 'cancel-right' | 'car' | 'card-01' | 'card-02' | 'card-add' | 'card-check' | 'card-down' | 'card-edit' | 'card-lock' | 'card-minus' | 'card-number' | 'card-shield' | 'card-up' | 'card-x' | 'cart' | 'center' | 'chart-breakout-circle' | 'chart-breakout-square' | 'check-01' | 'check-02' | 'check-broken' | 'check-contained' | 'check-square-broken' | 'check-square-contained' | 'chevron-double-down' | 'chevron-double-left' | 'chevron-double-right' | 'chevron-double-up' | 'chevron-down' | 'chevron-left' | 'chevron-right' | 'chevron-up' | 'chromecast' | 'circle' | 'clock-01' | 'clock-backward' | 'clock-check' | 'clock-forward' | 'clock-plus' | 'cloud-01' | 'cloud-02' | 'cloud-03' | 'cloud-04' | 'cloud-lightning' | 'cloud-rain' | 'cloud-snow' | 'cloud-sun' | 'code-01' | 'code-02' | 'code-03' | 'code-04' | 'coin-broken' | 'coin-hand' | 'coin-number' | 'coin-unbroken' | 'coins' | 'coins-rotate' | 'color-picker' | 'color-swatch-01' | 'color-swatch-02' | 'colors-01' | 'colors-02' | 'column-horizontal-01' | 'column-horizontal-02' | 'column-horizontal-03' | 'column-vertical-01' | 'column-vertical-02' | 'column-vertical-03' | 'compare' | 'compass' | 'component' | 'computer' | 'contrast' | 'copy-left' | 'copy-right' | 'crop-01' | 'crop-02' | 'currency-bath' | 'currency-bitcoin' | 'currency-cent' | 'currency-coin-bath' | 'currency-coin-bitcoin' | 'currency-coin-cent' | 'currency-coin-dollar' | 'currency-coin-euro' | 'currency-coin-pound' | 'currency-coin-rubel' | 'currency-coin-rupee' | 'currency-coin-yen' | 'currency-dollar' | 'currency-euro' | 'currency-pound' | 'currency-rubel' | 'currency-rupee' | 'currency-yen' | 'cursor-01' | 'cursor-02' | 'cursor-03' | 'cursor-04' | 'cursor-05' | 'cursor-06' | 'cursor-grab' | 'cursor-grabbed' | 'cursor-pointer' | 'dash' | 'data-01' | 'data-02' | 'data-03' | 'data-04' | 'delete' | 'delivery' | 'diamond' | 'disc' | 'discount-circle' | 'discount-square' | 'discount-star-01' | 'discount-star-02' | 'discount-star-03' | 'divider' | 'dot-horizontal' | 'dot-vertical' | 'download' | 'download-01' | 'download-02' | 'drop' | 'edit-01' | 'edit-02' | 'edit-03' | 'edit-04' | 'edit-contained' | 'email' | 'embed' | 'equals' | 'equals-not' | 'eraser-01' | 'eraser-02' | 'expand' | 'expand-02' | 'eye-closed' | 'eye-open' | 'face-id-01' | 'face-id-02' | 'fast-backward' | 'fast-forward' | 'favourite' | 'feather-01' | 'feather-02' | 'file' | 'file-01' | 'file-02' | 'file-03' | 'file-04' | 'file-05' | 'file-06' | 'file-attach-01' | 'file-attach-02' | 'file-attach-03' | 'file-branch' | 'file-check-01' | 'file-check-02' | 'file-code' | 'file-down-01' | 'file-down-02' | 'file-edit-01' | 'file-edit-02' | 'file-eye-01' | 'file-eye-02' | 'file-lock-01' | 'file-lock-02' | 'file-lock-03' | 'file-minus-01' | 'file-minus-02' | 'file-multiple' | 'file-none' | 'file-plus-01' | 'file-plus-02' | 'file-question-01' | 'file-question-02' | 'file-return-01' | 'file-return-02' | 'file-search-01' | 'file-search-02' | 'file-shield-01' | 'file-shield-02' | 'file-shield-03' | 'file-shred' | 'file-up-01' | 'file-up-02' | 'file-x-02' | 'filter' | 'fingerpint-01' | 'fingerpint-02' | 'flame-01' | 'flash-off' | 'flash-on' | 'flex-align-bottom-01' | 'flex-align-center-01' | 'flex-align-left-01' | 'flex-align-right-01' | 'flex-align-spaced-01' | 'flex-align-top-01' | 'flex-columns' | 'flip-01' | 'flip-02' | 'flip-left' | 'flip-right' | 'folder' | 'folder-code' | 'folder-down-01' | 'folder-down-02' | 'folder-minus-01' | 'folder-open-01' | 'folder-open-02' | 'folder-open-03' | 'folder-plus-01' | 'folder-plus-02' | 'folder-search-01' | 'folder-search-02' | 'folder-shield' | 'folder-up-01' | 'folder-up-02' | 'folder-x-01' | 'folder-x-02' | 'gear' | 'gift-01' | 'gift-02' | 'git-branch-01' | 'git-branch-02' | 'git-branch-03' | 'git-branch-04' | 'git-branch-05' | 'glasses-01' | 'glasses-02' | 'globe' | 'globe-01' | 'globe-02' | 'globe-03' | 'globe-04' | 'globe-05' | 'graduation-cap-01' | 'graduation-cap-02' | 'grid-01' | 'grid-02' | 'grid-03' | 'grid-04-filled' | 'hash-01' | 'hash-02' | 'header-01' | 'header-02' | 'headphones' | 'heart' | 'help' | 'help-circle-contained' | 'help-square-contained' | 'hexagon' | 'home-01' | 'home-02' | 'home-03' | 'home-04' | 'home-05' | 'horizontal-chart-01' | 'horizontal-chart-02' | 'horizontal-chart-03' | 'hourglass-01' | 'hourglass-02' | 'hourglass-03' | 'image' | 'image-01' | 'image-02' | 'image-03' | 'image-04' | 'image-add' | 'image-avatar' | 'image-check' | 'image-down' | 'image-focus' | 'image-indent-left' | 'image-indent-right' | 'image-minus' | 'image-no-borders' | 'image-question' | 'image-up' | 'image-x' | 'inbox-01' | 'inbox-02' | 'indent-decrease' | 'indent-increase' | 'indent-left' | 'indent-right' | 'info-square-01-contained' | 'info-square-02-contained-filled' | 'information-circle-contained' | 'intersect' | 'iphone-02' | 'italics-01' | 'italics-02' | 'key-01' | 'key-02' | 'keyboard' | 'laptop-01' | 'laptop-02' | 'layers-01' | 'layers-02' | 'layers-03' | 'layers-04' | 'layers-05' | 'layout-01' | 'layout-02' | 'layout-03' | 'layout-04' | 'layout-bottom' | 'layout-grid-01' | 'layout-left' | 'layout-right' | 'layout-scale' | 'layout-top' | 'letter-spacing-01' | 'letter-spacing-02' | 'letter-spacing-03' | 'lightbulb-01' | 'lightbulb-02' | 'lightbulb-03' | 'lightning-01' | 'lightning-02' | 'lightning-circle-contained' | 'lightning-filled' | 'lightning-square-contained' | 'line-chart-down-01' | 'line-chart-down-02' | 'line-chart-up-01' | 'line-chart-up-02' | 'line-height' | 'link' | 'link-angled' | 'link-broken' | 'link-external' | 'list' | 'list-numbers' | 'loader-01' | 'loader-02' | 'lock-01' | 'lock-02' | 'lock-03' | 'lock-04' | 'lock-open-01' | 'lock-open-02' | 'lock-open-03' | 'lock-open-04' | 'logout-01' | 'logout-02' | 'logout-03' | 'logout-04' | 'luggage-01' | 'luggage-02' | 'luggage-03' | 'luggage-04' | 'mail-01' | 'mail-02' | 'mail-03' | 'mail-04' | 'mail-05' | 'map-01' | 'map-02' | 'map-03' | 'map-04' | 'marker-01' | 'marker-02' | 'marker-03' | 'marker-04' | 'marker-05' | 'marker-06' | 'maximise-01' | 'maximise-02' | 'media-strip-01' | 'media-strip-02' | 'menu-01' | 'menu-02' | 'menu-03' | 'menu-04' | 'menu-05' | 'message-alert-circle' | 'message-alert-plus' | 'message-chat-01' | 'message-circle' | 'message-notify-circle' | 'message-notify-square' | 'message-square' | 'message-square-information' | 'message-square-plus' | 'message-square-typing' | 'message-square-x' | 'message-text-01' | 'message-text-02' | 'message-typing' | 'message-x' | 'microphone-01' | 'microphone-02' | 'microphone-off-01' | 'microphone-off-02' | 'minimise-01' | 'minimise-02' | 'minus-circle-contained' | 'minus-square-contained' | 'moon-01' | 'moon-02' | 'mouse' | 'move' | 'note-01' | 'note-02' | 'notification-box' | 'notification-bubble' | 'notification-square-01' | 'notification-square-02' | 'octagon' | 'overlap' | 'package-01' | 'package-02' | 'package-check' | 'package-minus' | 'package-plus' | 'package-x' | 'paint-bucket-01' | 'paint-bucket-02' | 'palette' | 'paperclip' | 'paperclip-01' | 'paperclip-02' | 'passport' | 'password-01' | 'password-02' | 'pause-01' | 'pause-02' | 'pause-03' | 'pen-tool-01' | 'pen-tool-02' | 'pen-tool-03' | 'pen-tool-04' | 'pencil-01' | 'pencil-02' | 'pencil-03' | 'pentagon' | 'percent-01' | 'percent-02' | 'percent-03' | 'perspective' | 'phone' | 'phone-call-01' | 'phone-call-02' | 'phone-down' | 'phone-incoming-01' | 'phone-incoming-02' | 'phone-off' | 'phone-outgoing-01' | 'phone-outgoing-02' | 'phone-up' | 'phone-x' | 'pie-chart-01' | 'pie-chart-02' | 'pie-chart-03' | 'plane' | 'play-01' | 'play-02' | 'play-03' | 'plug-01' | 'plus-01' | 'plus-02' | 'plus-03' | 'pointer-01' | 'pointer-02' | 'power' | 'presentation-01' | 'presentation-02' | 'presentation-03' | 'progress' | 'quote' | 'receipt' | 'receipt-lines' | 'refresh-01' | 'rss' | 'ruler' | 'save-01' | 'save-02' | 'scale-01' | 'scale-02' | 'scale-03' | 'scan' | 'scissors-01' | 'scissors-02' | 'scissors-03' | 'scissors-04' | 'search-01' | 'search-02' | 'send-01' | 'send-02' | 'send-03' | 'server-01' | 'server-02' | 'server-03' | 'server-04' | 'server-05' | 'server-06' | 'server-down' | 'server-up' | 'settings' | 'share' | 'shield-01' | 'shield-02' | 'shield-check' | 'shield-plus' | 'shuffle' | 'signal' | 'skew' | 'skip-back' | 'skip-forward' | 'slash-01-backward' | 'slash-01-forward' | 'slash-02-forward' | 'smiley-happy' | 'smiley-happy-plus' | 'smiley-neutral' | 'smiley-sad' | 'smiley-wink' | 'snowflake' | 'sort-horizontal' | 'sort-vertical-01' | 'sort-vertical-02' | 'space-height' | 'space-horizontal' | 'space-vertical' | 'space-width' | 'speaker' | 'square' | 'star-01' | 'star-02' | 'stars' | 'stop-01' | 'stop-02' | 'stopwatch-01' | 'stopwatch-02' | 'stopwatch-03' | 'stopwatch-04' | 'stopwatch-05' | 'stopwatch-off' | 'stopwatch-snooze' | 'sun-01' | 'sun-02' | 'sun-03' | 'sun-down' | 'sun-up' | 'superscript' | 'table' | 'tag' | 'target-01' | 'target-02' | 'target-03' | 'target-04' | 'temperature-01' | 'temperature-02' | 'temperature-03' | 'temperature-04' | 'terminal' | 'text-input-01' | 'text-input-02' | 'thumb-down' | 'thumb-up' | 'ticket-01' | 'ticket-02' | 'toggle-right' | 'toogle-left' | 'train' | 'transform' | 'trash-01' | 'trash-02' | 'trash-03' | 'trash-04' | 'trend-down-01' | 'trend-down-02' | 'trend-up-01' | 'trend-up-02' | 'triangle' | 'truck' | 'tv' | 'type-01' | 'type-02' | 'type-03' | 'type-strike-01' | 'type-strike-02' | 'umbrella' | 'umbrella-01' | 'umbrella-02' | 'underline-01' | 'underline-02' | 'union' | 'upload-01' | 'upload-02' | 'upload-03' | 'upload-04' | 'user-profile-01' | 'user-profile-02' | 'user-profile-03' | 'user-profile-add-01' | 'user-profile-add-02' | 'user-profile-check' | 'user-profile-circle' | 'user-profile-down' | 'user-profile-group' | 'user-profile-left' | 'user-profile-minus' | 'user-profile-right' | 'user-profile-square' | 'user-profile-star' | 'user-profile-up' | 'user-profile-x' | 'users-profiles-01' | 'users-profiles-02' | 'users-profiles-03' | 'users-profiles-check' | 'users-profiles-down' | 'users-profiles-left' | 'users-profiles-minus' | 'users-profiles-plus' | 'users-profiles-right' | 'users-profiles-up' | 'users-profiles-x' | 'variant' | 'video-off' | 'video-on' | 'volume-01' | 'volume-02' | 'volume-03' | 'volume-04' | 'volume-05' | 'volume-06' | 'volume-07' | 'wallert-04' | 'wallet-01' | 'wallet-02' | 'wallet-03' | 'watch-01' | 'watch-02' | 'waveform' | 'webcam' | 'wifi-off' | 'wifi-on' | 'wind-01' | 'wind-02' | 'wind-03' | 'wrench' | 'x-01' | 'x-02' | 'x-03' | 'x-circle-contained' | 'x-square-contained' | 'youtube' | 'zoom-in' | 'zoom-out' | 'custom-warning-xs-neutral';
5628
-
5629
- /**
5630
- * Custom icon names — self-contained icons with built-in background and color.
5631
- *
5632
- * Naming: `custom-{state}-{size}-{style}`
5633
- *
5634
- * | State | Description |
5635
- * |------------------|------------------------------------|
5636
- * | check | Checkmark / completed |
5637
- * | certificate | Certificate / credential |
5638
- * | view | Eye / visibility |
5639
- * | add | Plus / create |
5640
- * | delete | Trash / remove |
5641
- * | download | Download arrow |
5642
- * | upload | Upload arrow |
5643
- * | time | Clock / duration |
5644
- * | slide | Presentation / slideshow |
5645
- * | tools | Wrench / settings |
5646
- * | doc | Document / file |
5647
- * | info | Information circle |
5648
- * | warning | Warning triangle |
5649
- * | not-applicable | N/A / disabled |
5650
- *
5651
- * Sizes: xs (24), sm (32), md (40), lg (48), xl (56), 2xl (64)
5652
- * Styles: active (colored), neutral (gray)
5653
- */
5654
- type CustomIconName = 'custom-add-2xl-active' | 'custom-add-2xl-neutral' | 'custom-add-lg-active' | 'custom-add-lg-neutral' | 'custom-add-md-active' | 'custom-add-md-neutral' | 'custom-add-sm-active' | 'custom-add-sm-neutral' | 'custom-add-xl-active' | 'custom-add-xl-neutral' | 'custom-add-xs-active' | 'custom-add-xs-neutral' | 'custom-certificate-2xl-active' | 'custom-certificate-2xl-neutral' | 'custom-certificate-lg-active' | 'custom-certificate-lg-neutral' | 'custom-certificate-md-active' | 'custom-certificate-md-neutral' | 'custom-certificate-sm-active' | 'custom-certificate-sm-neutral' | 'custom-certificate-xl-active' | 'custom-certificate-xl-neutral' | 'custom-certificate-xs-active' | 'custom-certificate-xs-neutral' | 'custom-check-2xl-active' | 'custom-check-2xl-neutral' | 'custom-check-lg-active' | 'custom-check-lg-neutral' | 'custom-check-md-active' | 'custom-check-md-neutral' | 'custom-check-sm-active' | 'custom-check-sm-neutral' | 'custom-check-xl-active' | 'custom-check-xl-neutral' | 'custom-check-xs-active' | 'custom-check-xs-neutral' | 'custom-delete-2xl-active' | 'custom-delete-2xl-neutral' | 'custom-delete-lg-active' | 'custom-delete-lg-neutral' | 'custom-delete-md-active' | 'custom-delete-md-neutral' | 'custom-delete-sm-active' | 'custom-delete-sm-neutral' | 'custom-delete-xl-active' | 'custom-delete-xl-neutral' | 'custom-delete-xs-active' | 'custom-delete-xs-neutral' | 'custom-doc-2xl-active' | 'custom-doc-2xl-neutral' | 'custom-doc-lg-active' | 'custom-doc-lg-neutral' | 'custom-doc-md-active' | 'custom-doc-md-neutral' | 'custom-doc-sm-active' | 'custom-doc-sm-neutral' | 'custom-doc-xl-active' | 'custom-doc-xl-neutral' | 'custom-doc-xs-active' | 'custom-doc-xs-neutral' | 'custom-download-2xl-active' | 'custom-download-2xl-neutral' | 'custom-download-lg-active' | 'custom-download-lg-neutral' | 'custom-download-md-active' | 'custom-download-md-neutral' | 'custom-download-sm-active' | 'custom-download-sm-neutral' | 'custom-download-xl-active' | 'custom-download-xl-neutral' | 'custom-download-xs-active' | 'custom-download-xs-neutral' | 'custom-info-2xl-active' | 'custom-info-2xl-neutral' | 'custom-info-lg-active' | 'custom-info-lg-neutral' | 'custom-info-md-active' | 'custom-info-md-neutral' | 'custom-info-sm-active' | 'custom-info-sm-neutral' | 'custom-info-xl-active' | 'custom-info-xl-neutral' | 'custom-info-xs-active' | 'custom-info-xs-neutral' | 'custom-not-applicable-2xl-active' | 'custom-not-applicable-2xl-neutral' | 'custom-not-applicable-lg-active' | 'custom-not-applicable-lg-neutral' | 'custom-not-applicable-md-active' | 'custom-not-applicable-md-neutral' | 'custom-not-applicable-sm-active' | 'custom-not-applicable-sm-neutral' | 'custom-not-applicable-xl-active' | 'custom-not-applicable-xl-neutral' | 'custom-not-applicable-xs-active' | 'custom-not-applicable-xs-neutral' | 'custom-slide-2xl-active' | 'custom-slide-2xl-neutral' | 'custom-slide-lg-active' | 'custom-slide-lg-neutral' | 'custom-slide-md-active' | 'custom-slide-md-neutral' | 'custom-slide-sm-active' | 'custom-slide-sm-neutral' | 'custom-slide-xl-active' | 'custom-slide-xl-neutral' | 'custom-slide-xs-active' | 'custom-slide-xs-neutral' | 'custom-time-2xl-active' | 'custom-time-2xl-neutral' | 'custom-time-lg-active' | 'custom-time-lg-neutral' | 'custom-time-md-active' | 'custom-time-md-neutral' | 'custom-time-sm-active' | 'custom-time-sm-neutral' | 'custom-time-xl-active' | 'custom-time-xl-neutral' | 'custom-time-xs-active' | 'custom-time-xs-neutral' | 'custom-tools-2xl-active' | 'custom-tools-2xl-neutral' | 'custom-tools-lg-active' | 'custom-tools-lg-neutral' | 'custom-tools-md-active' | 'custom-tools-md-neutral' | 'custom-tools-sm-active' | 'custom-tools-sm-neutral' | 'custom-tools-xl-active' | 'custom-tools-xl-neutral' | 'custom-tools-xs-active' | 'custom-tools-xs-neutral' | 'custom-upload-2xl-active' | 'custom-upload-2xl-neutral' | 'custom-upload-lg-active' | 'custom-upload-lg-neutral' | 'custom-upload-md-active' | 'custom-upload-md-neutral' | 'custom-upload-sm-active' | 'custom-upload-sm-neutral' | 'custom-upload-xl-active' | 'custom-upload-xl-neutral' | 'custom-upload-xs-active' | 'custom-upload-xs-neutral' | 'custom-view-2xl-active' | 'custom-view-2xl-neutral' | 'custom-view-lg-active' | 'custom-view-lg-neutral' | 'custom-view-md-active' | 'custom-view-md-neutral' | 'custom-view-sm-active' | 'custom-view-sm-neutral' | 'custom-view-xl-active' | 'custom-view-xl-neutral' | 'custom-view-xs-active' | 'custom-view-xs-neutral' | 'custom-warning' | 'custom-warning-2xl-active' | 'custom-warning-2xl-neutral' | 'custom-warning-lg-active' | 'custom-warning-lg-neutral' | 'custom-warning-md-active' | 'custom-warning-md-neutral' | 'custom-warning-sm-active' | 'custom-warning-sm-neutral' | 'custom-warning-xl-active' | 'custom-warning-xl-neutral' | 'custom-warning-xs-active';
5655
-
5656
6112
  /** Container size. The inner icon is always 50 % of the container. */
5657
6113
  type IconSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl';
5658
6114
  /**
@@ -5697,7 +6153,7 @@ declare class IconComponent {
5697
6153
  * Registered icon name. When provided, the SVG is resolved from the
5698
6154
  * `IconRegistry`. Takes highest priority.
5699
6155
  */
5700
- name: _angular_core.InputSignal<IconName | CustomIconName | undefined>;
6156
+ name: _angular_core.InputSignal<"embed" | "link" | "progress" | "table" | "circle" | "filter" | "image" | "annotation" | "center" | "drop" | "activity" | "add-square-01" | "add-square-02" | "add-square-03" | "add-square-04" | "alarm-01" | "alarm-02" | "alarm-03" | "alarm-04" | "alarm-05" | "alarm-06" | "alarm-check" | "alarm-minus" | "alarm-off" | "alarm-plus" | "alert-circle" | "alert-square" | "alert-triangle" | "align-center" | "align-down-01" | "align-down-02" | "align-horizontal-center-01" | "align-horizontal-center-02" | "align-horizontal-center-03" | "align-justify" | "align-left" | "align-left-01" | "align-left-02" | "align-right" | "align-right-01" | "align-right-02" | "align-up-01" | "align-up-02" | "align-vertical-center-01" | "align-vertical-center-02" | "align-vertical-center-03" | "annotation-alert" | "annotation-check" | "annotation-information" | "annotation-plus" | "annotation-typing" | "annotation-x" | "atom" | "attatchment-01" | "attatchment-02" | "audio-settings-01" | "audio-settings-02" | "bag-01" | "bag-02" | "bag-03" | "bag-04" | "bag-05" | "bank" | "bank-note-01" | "bank-note-02" | "bank-note-03" | "bank-note-04" | "bank-note-05" | "bank-note-06" | "bar-chart-01" | "bar-chart-02" | "bar-chart-03" | "bar-chart-04" | "bar-chart-05" | "bar-chart-square-01" | "bar-chart-square-02" | "bar-chart-square-03" | "bar-chart-square-down-01" | "bar-chart-square-down-02" | "bar-chart-square-up-01" | "bar-group-01" | "bar-group-02" | "bar-group-03" | "battery-01" | "battery-02" | "battery-03" | "battery-04" | "battery-empty" | "battery-fill-01" | "battery-fill-02" | "battery-fill-04" | "bell-01" | "bell-02" | "bell-03" | "bell-04" | "bell-off-01" | "bell-off-02" | "bell-ringing-01" | "bell-ringing-02" | "bell-ringing-03" | "bell-ringing-04" | "bezier-01" | "bezier-02" | "bluetooth-01" | "bluetooth-02" | "bold-01" | "bold-02" | "book-01" | "book-02" | "book-03" | "book-04" | "book-05" | "book-06" | "box" | "brackets" | "brackets-check" | "brackets-minus" | "brackets-plus" | "brackets-slash" | "brackets-typing" | "calculator-01" | "calculator-02" | "calendar-01" | "calendar-02" | "calendar-03" | "calendar-04" | "calendar-05" | "calendar-06" | "calendar-07" | "calendar-check" | "calendar-minus" | "calendar-number" | "calendar-plus" | "camera-01" | "camera-02" | "camera-lens" | "camera-off" | "cancel-left" | "cancel-right" | "car" | "card-01" | "card-02" | "card-add" | "card-check" | "card-down" | "card-edit" | "card-lock" | "card-minus" | "card-number" | "card-shield" | "card-up" | "card-x" | "cart" | "chart-breakout-circle" | "chart-breakout-square" | "check-01" | "check-02" | "check-broken" | "check-contained" | "check-square-broken" | "check-square-contained" | "chevron-double-down" | "chevron-double-left" | "chevron-double-right" | "chevron-double-up" | "chevron-down" | "chevron-left" | "chevron-right" | "chevron-up" | "chromecast" | "clock-01" | "clock-backward" | "clock-check" | "clock-forward" | "clock-plus" | "cloud-01" | "cloud-02" | "cloud-03" | "cloud-04" | "cloud-lightning" | "cloud-rain" | "cloud-snow" | "cloud-sun" | "code-01" | "code-02" | "code-03" | "code-04" | "coin-broken" | "coin-hand" | "coin-number" | "coin-unbroken" | "coins" | "coins-rotate" | "color-picker" | "color-swatch-01" | "color-swatch-02" | "colors-01" | "colors-02" | "column-horizontal-01" | "column-horizontal-02" | "column-horizontal-03" | "column-vertical-01" | "column-vertical-02" | "column-vertical-03" | "compare" | "compass" | "component" | "computer" | "contrast" | "copy-left" | "copy-right" | "crop-01" | "crop-02" | "currency-bath" | "currency-bitcoin" | "currency-cent" | "currency-coin-bath" | "currency-coin-bitcoin" | "currency-coin-cent" | "currency-coin-dollar" | "currency-coin-euro" | "currency-coin-pound" | "currency-coin-rubel" | "currency-coin-rupee" | "currency-coin-yen" | "currency-dollar" | "currency-euro" | "currency-pound" | "currency-rubel" | "currency-rupee" | "currency-yen" | "cursor-01" | "cursor-02" | "cursor-03" | "cursor-04" | "cursor-05" | "cursor-06" | "cursor-grab" | "cursor-grabbed" | "cursor-pointer" | "dash" | "data-01" | "data-02" | "data-03" | "data-04" | "delete" | "delivery" | "diamond" | "disc" | "discount-circle" | "discount-square" | "discount-star-01" | "discount-star-02" | "discount-star-03" | "divider" | "dot-horizontal" | "dot-vertical" | "download" | "download-01" | "download-02" | "edit-01" | "edit-02" | "edit-03" | "edit-04" | "edit-contained" | "email" | "equals" | "equals-not" | "eraser-01" | "eraser-02" | "expand" | "expand-02" | "eye-closed" | "eye-open" | "face-id-01" | "face-id-02" | "fast-backward" | "fast-forward" | "favourite" | "feather-01" | "feather-02" | "file" | "file-01" | "file-02" | "file-03" | "file-04" | "file-05" | "file-06" | "file-attach-01" | "file-attach-02" | "file-attach-03" | "file-branch" | "file-check-01" | "file-check-02" | "file-code" | "file-down-01" | "file-down-02" | "file-edit-01" | "file-edit-02" | "file-eye-01" | "file-eye-02" | "file-lock-01" | "file-lock-02" | "file-lock-03" | "file-minus-01" | "file-minus-02" | "file-multiple" | "file-none" | "file-plus-01" | "file-plus-02" | "file-question-01" | "file-question-02" | "file-return-01" | "file-return-02" | "file-search-01" | "file-search-02" | "file-shield-01" | "file-shield-02" | "file-shield-03" | "file-shred" | "file-up-01" | "file-up-02" | "file-x-02" | "fingerpint-01" | "fingerpint-02" | "flame-01" | "flash-off" | "flash-on" | "flex-align-bottom-01" | "flex-align-center-01" | "flex-align-left-01" | "flex-align-right-01" | "flex-align-spaced-01" | "flex-align-top-01" | "flex-columns" | "flip-01" | "flip-02" | "flip-left" | "flip-right" | "folder" | "folder-code" | "folder-down-01" | "folder-down-02" | "folder-minus-01" | "folder-open-01" | "folder-open-02" | "folder-open-03" | "folder-plus-01" | "folder-plus-02" | "folder-search-01" | "folder-search-02" | "folder-shield" | "folder-up-01" | "folder-up-02" | "folder-x-01" | "folder-x-02" | "gear" | "gift-01" | "gift-02" | "git-branch-01" | "git-branch-02" | "git-branch-03" | "git-branch-04" | "git-branch-05" | "glasses-01" | "glasses-02" | "globe" | "globe-01" | "globe-02" | "globe-03" | "globe-04" | "globe-05" | "graduation-cap-01" | "graduation-cap-02" | "grid-01" | "grid-02" | "grid-03" | "grid-04-filled" | "hash-01" | "hash-02" | "header-01" | "header-02" | "headphones" | "heart" | "help" | "help-circle-contained" | "help-square-contained" | "hexagon" | "home-01" | "home-02" | "home-03" | "home-04" | "home-05" | "horizontal-chart-01" | "horizontal-chart-02" | "horizontal-chart-03" | "hourglass-01" | "hourglass-02" | "hourglass-03" | "image-01" | "image-02" | "image-03" | "image-04" | "image-add" | "image-avatar" | "image-check" | "image-down" | "image-focus" | "image-indent-left" | "image-indent-right" | "image-minus" | "image-no-borders" | "image-question" | "image-up" | "image-x" | "inbox-01" | "inbox-02" | "indent-decrease" | "indent-increase" | "indent-left" | "indent-right" | "info-square-01-contained" | "info-square-02-contained-filled" | "information-circle-contained" | "intersect" | "iphone-02" | "italics-01" | "italics-02" | "key-01" | "key-02" | "keyboard" | "laptop-01" | "laptop-02" | "layers-01" | "layers-02" | "layers-03" | "layers-04" | "layers-05" | "layout-01" | "layout-02" | "layout-03" | "layout-04" | "layout-bottom" | "layout-grid-01" | "layout-left" | "layout-right" | "layout-scale" | "layout-top" | "letter-spacing-01" | "letter-spacing-02" | "letter-spacing-03" | "lightbulb-01" | "lightbulb-02" | "lightbulb-03" | "lightning-01" | "lightning-02" | "lightning-circle-contained" | "lightning-filled" | "lightning-square-contained" | "line-chart-down-01" | "line-chart-down-02" | "line-chart-up-01" | "line-chart-up-02" | "line-height" | "link-angled" | "link-broken" | "link-external" | "list" | "list-numbers" | "loader-01" | "loader-02" | "lock-01" | "lock-02" | "lock-03" | "lock-04" | "lock-open-01" | "lock-open-02" | "lock-open-03" | "lock-open-04" | "logout-01" | "logout-02" | "logout-03" | "logout-04" | "luggage-01" | "luggage-02" | "luggage-03" | "luggage-04" | "mail-01" | "mail-02" | "mail-03" | "mail-04" | "mail-05" | "map-01" | "map-02" | "map-03" | "map-04" | "marker-01" | "marker-02" | "marker-03" | "marker-04" | "marker-05" | "marker-06" | "maximise-01" | "maximise-02" | "media-strip-01" | "media-strip-02" | "menu-01" | "menu-02" | "menu-03" | "menu-04" | "menu-05" | "message-alert-circle" | "message-alert-plus" | "message-chat-01" | "message-circle" | "message-notify-circle" | "message-notify-square" | "message-square" | "message-square-information" | "message-square-plus" | "message-square-typing" | "message-square-x" | "message-text-01" | "message-text-02" | "message-typing" | "message-x" | "microphone-01" | "microphone-02" | "microphone-off-01" | "microphone-off-02" | "minimise-01" | "minimise-02" | "minus-circle-contained" | "minus-square-contained" | "moon-01" | "moon-02" | "mouse" | "move" | "note-01" | "note-02" | "notification-box" | "notification-bubble" | "notification-square-01" | "notification-square-02" | "octagon" | "overlap" | "package-01" | "package-02" | "package-check" | "package-minus" | "package-plus" | "package-x" | "paint-bucket-01" | "paint-bucket-02" | "palette" | "paperclip" | "paperclip-01" | "paperclip-02" | "passport" | "password-01" | "password-02" | "pause-01" | "pause-02" | "pause-03" | "pen-tool-01" | "pen-tool-02" | "pen-tool-03" | "pen-tool-04" | "pencil-01" | "pencil-02" | "pencil-03" | "pentagon" | "percent-01" | "percent-02" | "percent-03" | "perspective" | "phone" | "phone-call-01" | "phone-call-02" | "phone-down" | "phone-incoming-01" | "phone-incoming-02" | "phone-off" | "phone-outgoing-01" | "phone-outgoing-02" | "phone-up" | "phone-x" | "pie-chart-01" | "pie-chart-02" | "pie-chart-03" | "plane" | "play-01" | "play-02" | "play-03" | "plug-01" | "plus-01" | "plus-02" | "plus-03" | "pointer-01" | "pointer-02" | "power" | "presentation-01" | "presentation-02" | "presentation-03" | "quote" | "receipt" | "receipt-lines" | "refresh-01" | "rss" | "ruler" | "save-01" | "save-02" | "scale-01" | "scale-02" | "scale-03" | "scan" | "scissors-01" | "scissors-02" | "scissors-03" | "scissors-04" | "search-01" | "search-02" | "send-01" | "send-02" | "send-03" | "server-01" | "server-02" | "server-03" | "server-04" | "server-05" | "server-06" | "server-down" | "server-up" | "settings" | "share" | "shield-01" | "shield-02" | "shield-check" | "shield-plus" | "shuffle" | "signal" | "skew" | "skip-back" | "skip-forward" | "slash-01-backward" | "slash-01-forward" | "slash-02-forward" | "smiley-happy" | "smiley-happy-plus" | "smiley-neutral" | "smiley-sad" | "smiley-wink" | "snowflake" | "sort-horizontal" | "sort-vertical-01" | "sort-vertical-02" | "space-height" | "space-horizontal" | "space-vertical" | "space-width" | "speaker" | "square" | "star-01" | "star-02" | "stars" | "stop-01" | "stop-02" | "stopwatch-01" | "stopwatch-02" | "stopwatch-03" | "stopwatch-04" | "stopwatch-05" | "stopwatch-off" | "stopwatch-snooze" | "sun-01" | "sun-02" | "sun-03" | "sun-down" | "sun-up" | "superscript" | "tag" | "target-01" | "target-02" | "target-03" | "target-04" | "temperature-01" | "temperature-02" | "temperature-03" | "temperature-04" | "terminal" | "text-input-01" | "text-input-02" | "thumb-down" | "thumb-up" | "ticket-01" | "ticket-02" | "toggle-right" | "toogle-left" | "train" | "transform" | "trash-01" | "trash-02" | "trash-03" | "trash-04" | "trend-down-01" | "trend-down-02" | "trend-up-01" | "trend-up-02" | "triangle" | "truck" | "tv" | "type-01" | "type-02" | "type-03" | "type-strike-01" | "type-strike-02" | "umbrella" | "umbrella-01" | "umbrella-02" | "underline-01" | "underline-02" | "union" | "upload-01" | "upload-02" | "upload-03" | "upload-04" | "user-profile-01" | "user-profile-02" | "user-profile-03" | "user-profile-add-01" | "user-profile-add-02" | "user-profile-check" | "user-profile-circle" | "user-profile-down" | "user-profile-group" | "user-profile-left" | "user-profile-minus" | "user-profile-right" | "user-profile-square" | "user-profile-star" | "user-profile-up" | "user-profile-x" | "users-profiles-01" | "users-profiles-02" | "users-profiles-03" | "users-profiles-check" | "users-profiles-down" | "users-profiles-left" | "users-profiles-minus" | "users-profiles-plus" | "users-profiles-right" | "users-profiles-up" | "users-profiles-x" | "variant" | "video-off" | "video-on" | "volume-01" | "volume-02" | "volume-03" | "volume-04" | "volume-05" | "volume-06" | "volume-07" | "wallert-04" | "wallet-01" | "wallet-02" | "wallet-03" | "watch-01" | "watch-02" | "waveform" | "webcam" | "wifi-off" | "wifi-on" | "wind-01" | "wind-02" | "wind-03" | "wrench" | "x-01" | "x-02" | "x-03" | "x-circle-contained" | "x-square-contained" | "youtube" | "zoom-in" | "zoom-out" | "custom-warning-xs-neutral" | "custom-add-2xl-active" | "custom-add-2xl-neutral" | "custom-add-lg-active" | "custom-add-lg-neutral" | "custom-add-md-active" | "custom-add-md-neutral" | "custom-add-sm-active" | "custom-add-sm-neutral" | "custom-add-xl-active" | "custom-add-xl-neutral" | "custom-add-xs-active" | "custom-add-xs-neutral" | "custom-amf-note-md-active" | "custom-amf-note-paid-md-active" | "custom-att-acc-md-active" | "custom-att-evaluate-md-active" | "custom-att-na-md-active" | "custom-cert-apply-md-active" | "custom-cert-refused-md-active" | "custom-cert-treatment-md-active" | "custom-cert-view-md-active" | "custom-certificate-2xl-active" | "custom-certificate-2xl-neutral" | "custom-certificate-lg-active" | "custom-certificate-lg-neutral" | "custom-certificate-md-active" | "custom-certificate-md-neutral" | "custom-certificate-sm-active" | "custom-certificate-sm-neutral" | "custom-certificate-xl-active" | "custom-certificate-xl-neutral" | "custom-certificate-xs-active" | "custom-certificate-xs-neutral" | "custom-check-2xl-active" | "custom-check-2xl-neutral" | "custom-check-lg-active" | "custom-check-lg-neutral" | "custom-check-md-active" | "custom-check-md-neutral" | "custom-check-sm-active" | "custom-check-sm-neutral" | "custom-check-xl-active" | "custom-check-xl-neutral" | "custom-check-xs-active" | "custom-check-xs-neutral" | "custom-content-classroom-md-active" | "custom-content-classroom-md-neutral" | "custom-content-elearning-md-active" | "custom-content-elearning-md-neutral" | "custom-content-liveonline-md-active" | "custom-content-liveonline-md-neutral" | "custom-content-selfstudy-md-active" | "custom-content-selfstudy-md-neutral" | "custom-content-technical-md-active" | "custom-content-technical-md-neutral" | "custom-delete-2xl-active" | "custom-delete-2xl-neutral" | "custom-delete-lg-active" | "custom-delete-lg-neutral" | "custom-delete-md-active" | "custom-delete-md-neutral" | "custom-delete-sm-active" | "custom-delete-sm-neutral" | "custom-delete-xl-active" | "custom-delete-xl-neutral" | "custom-delete-xs-active" | "custom-delete-xs-neutral" | "custom-doc-2xl-active" | "custom-doc-2xl-neutral" | "custom-doc-lg-active" | "custom-doc-lg-neutral" | "custom-doc-md-active" | "custom-doc-md-neutral" | "custom-doc-sm-active" | "custom-doc-sm-neutral" | "custom-doc-xl-active" | "custom-doc-xl-neutral" | "custom-doc-xs-active" | "custom-doc-xs-neutral" | "custom-download-2xl-active" | "custom-download-2xl-neutral" | "custom-download-lg-active" | "custom-download-lg-neutral" | "custom-download-md-active" | "custom-download-md-neutral" | "custom-download-sm-active" | "custom-download-sm-neutral" | "custom-download-xl-active" | "custom-download-xl-neutral" | "custom-download-xs-active" | "custom-download-xs-neutral" | "custom-exam-failed-md-active" | "custom-exam-missed-md-active" | "custom-exam-passed-md-active" | "custom-exam-schedule-md-active" | "custom-exam-scheduled-md-active" | "custom-exam-waiting-md-active" | "custom-info-2xl-active" | "custom-info-2xl-neutral" | "custom-info-lg-active" | "custom-info-lg-neutral" | "custom-info-md-active" | "custom-info-md-neutral" | "custom-info-sm-active" | "custom-info-sm-neutral" | "custom-info-xl-active" | "custom-info-xl-neutral" | "custom-info-xs-active" | "custom-info-xs-neutral" | "custom-not-applicable-2xl-active" | "custom-not-applicable-2xl-neutral" | "custom-not-applicable-lg-active" | "custom-not-applicable-lg-neutral" | "custom-not-applicable-md-active" | "custom-not-applicable-md-neutral" | "custom-not-applicable-sm-active" | "custom-not-applicable-sm-neutral" | "custom-not-applicable-xl-active" | "custom-not-applicable-xl-neutral" | "custom-not-applicable-xs-active" | "custom-not-applicable-xs-neutral" | "custom-slide-2xl-active" | "custom-slide-2xl-neutral" | "custom-slide-lg-active" | "custom-slide-lg-neutral" | "custom-slide-md-active" | "custom-slide-md-neutral" | "custom-slide-sm-active" | "custom-slide-sm-neutral" | "custom-slide-xl-active" | "custom-slide-xl-neutral" | "custom-slide-xs-active" | "custom-slide-xs-neutral" | "custom-time-2xl-active" | "custom-time-2xl-neutral" | "custom-time-lg-active" | "custom-time-lg-neutral" | "custom-time-md-active" | "custom-time-md-neutral" | "custom-time-sm-active" | "custom-time-sm-neutral" | "custom-time-xl-active" | "custom-time-xl-neutral" | "custom-time-xs-active" | "custom-time-xs-neutral" | "custom-tools-2xl-active" | "custom-tools-2xl-neutral" | "custom-tools-lg-active" | "custom-tools-lg-neutral" | "custom-tools-md-active" | "custom-tools-md-neutral" | "custom-tools-sm-active" | "custom-tools-sm-neutral" | "custom-tools-xl-active" | "custom-tools-xl-neutral" | "custom-tools-xs-active" | "custom-tools-xs-neutral" | "custom-upload-2xl-active" | "custom-upload-2xl-neutral" | "custom-upload-lg-active" | "custom-upload-lg-neutral" | "custom-upload-md-active" | "custom-upload-md-neutral" | "custom-upload-sm-active" | "custom-upload-sm-neutral" | "custom-upload-xl-active" | "custom-upload-xl-neutral" | "custom-upload-xs-active" | "custom-upload-xs-neutral" | "custom-view-2xl-active" | "custom-view-2xl-neutral" | "custom-view-lg-active" | "custom-view-lg-neutral" | "custom-view-md-active" | "custom-view-md-neutral" | "custom-view-sm-active" | "custom-view-sm-neutral" | "custom-view-xl-active" | "custom-view-xl-neutral" | "custom-view-xs-active" | "custom-view-xs-neutral" | "custom-warning-2xl-active" | "custom-warning-2xl-neutral" | "custom-warning-lg-active" | "custom-warning-lg-neutral" | "custom-warning-md-active" | "custom-warning-md-neutral" | "custom-warning-sm-active" | "custom-warning-sm-neutral" | "custom-warning-xl-active" | "custom-warning-xl-neutral" | "custom-warning-xs-active" | undefined>;
5701
6157
  /**
5702
6158
  * Inline SVG string to render inside the container.
5703
6159
  * When provided, this takes precedence over projected content.
@@ -5738,6 +6194,12 @@ declare class IconComponent {
5738
6194
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<IconComponent, "pecb-icon", never, { "name": { "alias": "name"; "required": false; "isSignal": true; }; "svgIcon": { "alias": "svgIcon"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "shape": { "alias": "shape"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
5739
6195
  }
5740
6196
 
6197
+ /**
6198
+ * All available icon names in the PECB icon library.
6199
+ * Use with `<pecb-icon name="icon-name">` for built-in icons.
6200
+ */
6201
+ type IconName = 'activity' | 'add-square-01' | 'add-square-02' | 'add-square-03' | 'add-square-04' | 'alarm-01' | 'alarm-02' | 'alarm-03' | 'alarm-04' | 'alarm-05' | 'alarm-06' | 'alarm-check' | 'alarm-minus' | 'alarm-off' | 'alarm-plus' | 'alert-circle' | 'alert-square' | 'alert-triangle' | 'align-center' | 'align-down-01' | 'align-down-02' | 'align-horizontal-center-01' | 'align-horizontal-center-02' | 'align-horizontal-center-03' | 'align-justify' | 'align-left' | 'align-left-01' | 'align-left-02' | 'align-right' | 'align-right-01' | 'align-right-02' | 'align-up-01' | 'align-up-02' | 'align-vertical-center-01' | 'align-vertical-center-02' | 'align-vertical-center-03' | 'annotation' | 'annotation-alert' | 'annotation-check' | 'annotation-information' | 'annotation-plus' | 'annotation-typing' | 'annotation-x' | 'atom' | 'attatchment-01' | 'attatchment-02' | 'audio-settings-01' | 'audio-settings-02' | 'bag-01' | 'bag-02' | 'bag-03' | 'bag-04' | 'bag-05' | 'bank' | 'bank-note-01' | 'bank-note-02' | 'bank-note-03' | 'bank-note-04' | 'bank-note-05' | 'bank-note-06' | 'bar-chart-01' | 'bar-chart-02' | 'bar-chart-03' | 'bar-chart-04' | 'bar-chart-05' | 'bar-chart-square-01' | 'bar-chart-square-02' | 'bar-chart-square-03' | 'bar-chart-square-down-01' | 'bar-chart-square-down-02' | 'bar-chart-square-up-01' | 'bar-group-01' | 'bar-group-02' | 'bar-group-03' | 'battery-01' | 'battery-02' | 'battery-03' | 'battery-04' | 'battery-empty' | 'battery-fill-01' | 'battery-fill-02' | 'battery-fill-04' | 'bell-01' | 'bell-02' | 'bell-03' | 'bell-04' | 'bell-off-01' | 'bell-off-02' | 'bell-ringing-01' | 'bell-ringing-02' | 'bell-ringing-03' | 'bell-ringing-04' | 'bezier-01' | 'bezier-02' | 'bluetooth-01' | 'bluetooth-02' | 'bold-01' | 'bold-02' | 'book-01' | 'book-02' | 'book-03' | 'book-04' | 'book-05' | 'book-06' | 'box' | 'brackets' | 'brackets-check' | 'brackets-minus' | 'brackets-plus' | 'brackets-slash' | 'brackets-typing' | 'calculator-01' | 'calculator-02' | 'calendar-01' | 'calendar-02' | 'calendar-03' | 'calendar-04' | 'calendar-05' | 'calendar-06' | 'calendar-07' | 'calendar-check' | 'calendar-minus' | 'calendar-number' | 'calendar-plus' | 'camera-01' | 'camera-02' | 'camera-lens' | 'camera-off' | 'cancel-left' | 'cancel-right' | 'car' | 'card-01' | 'card-02' | 'card-add' | 'card-check' | 'card-down' | 'card-edit' | 'card-lock' | 'card-minus' | 'card-number' | 'card-shield' | 'card-up' | 'card-x' | 'cart' | 'center' | 'chart-breakout-circle' | 'chart-breakout-square' | 'check-01' | 'check-02' | 'check-broken' | 'check-contained' | 'check-square-broken' | 'check-square-contained' | 'chevron-double-down' | 'chevron-double-left' | 'chevron-double-right' | 'chevron-double-up' | 'chevron-down' | 'chevron-left' | 'chevron-right' | 'chevron-up' | 'chromecast' | 'circle' | 'clock-01' | 'clock-backward' | 'clock-check' | 'clock-forward' | 'clock-plus' | 'cloud-01' | 'cloud-02' | 'cloud-03' | 'cloud-04' | 'cloud-lightning' | 'cloud-rain' | 'cloud-snow' | 'cloud-sun' | 'code-01' | 'code-02' | 'code-03' | 'code-04' | 'coin-broken' | 'coin-hand' | 'coin-number' | 'coin-unbroken' | 'coins' | 'coins-rotate' | 'color-picker' | 'color-swatch-01' | 'color-swatch-02' | 'colors-01' | 'colors-02' | 'column-horizontal-01' | 'column-horizontal-02' | 'column-horizontal-03' | 'column-vertical-01' | 'column-vertical-02' | 'column-vertical-03' | 'compare' | 'compass' | 'component' | 'computer' | 'contrast' | 'copy-left' | 'copy-right' | 'crop-01' | 'crop-02' | 'currency-bath' | 'currency-bitcoin' | 'currency-cent' | 'currency-coin-bath' | 'currency-coin-bitcoin' | 'currency-coin-cent' | 'currency-coin-dollar' | 'currency-coin-euro' | 'currency-coin-pound' | 'currency-coin-rubel' | 'currency-coin-rupee' | 'currency-coin-yen' | 'currency-dollar' | 'currency-euro' | 'currency-pound' | 'currency-rubel' | 'currency-rupee' | 'currency-yen' | 'cursor-01' | 'cursor-02' | 'cursor-03' | 'cursor-04' | 'cursor-05' | 'cursor-06' | 'cursor-grab' | 'cursor-grabbed' | 'cursor-pointer' | 'dash' | 'data-01' | 'data-02' | 'data-03' | 'data-04' | 'delete' | 'delivery' | 'diamond' | 'disc' | 'discount-circle' | 'discount-square' | 'discount-star-01' | 'discount-star-02' | 'discount-star-03' | 'divider' | 'dot-horizontal' | 'dot-vertical' | 'download' | 'download-01' | 'download-02' | 'drop' | 'edit-01' | 'edit-02' | 'edit-03' | 'edit-04' | 'edit-contained' | 'email' | 'embed' | 'equals' | 'equals-not' | 'eraser-01' | 'eraser-02' | 'expand' | 'expand-02' | 'eye-closed' | 'eye-open' | 'face-id-01' | 'face-id-02' | 'fast-backward' | 'fast-forward' | 'favourite' | 'feather-01' | 'feather-02' | 'file' | 'file-01' | 'file-02' | 'file-03' | 'file-04' | 'file-05' | 'file-06' | 'file-attach-01' | 'file-attach-02' | 'file-attach-03' | 'file-branch' | 'file-check-01' | 'file-check-02' | 'file-code' | 'file-down-01' | 'file-down-02' | 'file-edit-01' | 'file-edit-02' | 'file-eye-01' | 'file-eye-02' | 'file-lock-01' | 'file-lock-02' | 'file-lock-03' | 'file-minus-01' | 'file-minus-02' | 'file-multiple' | 'file-none' | 'file-plus-01' | 'file-plus-02' | 'file-question-01' | 'file-question-02' | 'file-return-01' | 'file-return-02' | 'file-search-01' | 'file-search-02' | 'file-shield-01' | 'file-shield-02' | 'file-shield-03' | 'file-shred' | 'file-up-01' | 'file-up-02' | 'file-x-02' | 'filter' | 'fingerpint-01' | 'fingerpint-02' | 'flame-01' | 'flash-off' | 'flash-on' | 'flex-align-bottom-01' | 'flex-align-center-01' | 'flex-align-left-01' | 'flex-align-right-01' | 'flex-align-spaced-01' | 'flex-align-top-01' | 'flex-columns' | 'flip-01' | 'flip-02' | 'flip-left' | 'flip-right' | 'folder' | 'folder-code' | 'folder-down-01' | 'folder-down-02' | 'folder-minus-01' | 'folder-open-01' | 'folder-open-02' | 'folder-open-03' | 'folder-plus-01' | 'folder-plus-02' | 'folder-search-01' | 'folder-search-02' | 'folder-shield' | 'folder-up-01' | 'folder-up-02' | 'folder-x-01' | 'folder-x-02' | 'gear' | 'gift-01' | 'gift-02' | 'git-branch-01' | 'git-branch-02' | 'git-branch-03' | 'git-branch-04' | 'git-branch-05' | 'glasses-01' | 'glasses-02' | 'globe' | 'globe-01' | 'globe-02' | 'globe-03' | 'globe-04' | 'globe-05' | 'graduation-cap-01' | 'graduation-cap-02' | 'grid-01' | 'grid-02' | 'grid-03' | 'grid-04-filled' | 'hash-01' | 'hash-02' | 'header-01' | 'header-02' | 'headphones' | 'heart' | 'help' | 'help-circle-contained' | 'help-square-contained' | 'hexagon' | 'home-01' | 'home-02' | 'home-03' | 'home-04' | 'home-05' | 'horizontal-chart-01' | 'horizontal-chart-02' | 'horizontal-chart-03' | 'hourglass-01' | 'hourglass-02' | 'hourglass-03' | 'image' | 'image-01' | 'image-02' | 'image-03' | 'image-04' | 'image-add' | 'image-avatar' | 'image-check' | 'image-down' | 'image-focus' | 'image-indent-left' | 'image-indent-right' | 'image-minus' | 'image-no-borders' | 'image-question' | 'image-up' | 'image-x' | 'inbox-01' | 'inbox-02' | 'indent-decrease' | 'indent-increase' | 'indent-left' | 'indent-right' | 'info-square-01-contained' | 'info-square-02-contained-filled' | 'information-circle-contained' | 'intersect' | 'iphone-02' | 'italics-01' | 'italics-02' | 'key-01' | 'key-02' | 'keyboard' | 'laptop-01' | 'laptop-02' | 'layers-01' | 'layers-02' | 'layers-03' | 'layers-04' | 'layers-05' | 'layout-01' | 'layout-02' | 'layout-03' | 'layout-04' | 'layout-bottom' | 'layout-grid-01' | 'layout-left' | 'layout-right' | 'layout-scale' | 'layout-top' | 'letter-spacing-01' | 'letter-spacing-02' | 'letter-spacing-03' | 'lightbulb-01' | 'lightbulb-02' | 'lightbulb-03' | 'lightning-01' | 'lightning-02' | 'lightning-circle-contained' | 'lightning-filled' | 'lightning-square-contained' | 'line-chart-down-01' | 'line-chart-down-02' | 'line-chart-up-01' | 'line-chart-up-02' | 'line-height' | 'link' | 'link-angled' | 'link-broken' | 'link-external' | 'list' | 'list-numbers' | 'loader-01' | 'loader-02' | 'lock-01' | 'lock-02' | 'lock-03' | 'lock-04' | 'lock-open-01' | 'lock-open-02' | 'lock-open-03' | 'lock-open-04' | 'logout-01' | 'logout-02' | 'logout-03' | 'logout-04' | 'luggage-01' | 'luggage-02' | 'luggage-03' | 'luggage-04' | 'mail-01' | 'mail-02' | 'mail-03' | 'mail-04' | 'mail-05' | 'map-01' | 'map-02' | 'map-03' | 'map-04' | 'marker-01' | 'marker-02' | 'marker-03' | 'marker-04' | 'marker-05' | 'marker-06' | 'maximise-01' | 'maximise-02' | 'media-strip-01' | 'media-strip-02' | 'menu-01' | 'menu-02' | 'menu-03' | 'menu-04' | 'menu-05' | 'message-alert-circle' | 'message-alert-plus' | 'message-chat-01' | 'message-circle' | 'message-notify-circle' | 'message-notify-square' | 'message-square' | 'message-square-information' | 'message-square-plus' | 'message-square-typing' | 'message-square-x' | 'message-text-01' | 'message-text-02' | 'message-typing' | 'message-x' | 'microphone-01' | 'microphone-02' | 'microphone-off-01' | 'microphone-off-02' | 'minimise-01' | 'minimise-02' | 'minus-circle-contained' | 'minus-square-contained' | 'moon-01' | 'moon-02' | 'mouse' | 'move' | 'note-01' | 'note-02' | 'notification-box' | 'notification-bubble' | 'notification-square-01' | 'notification-square-02' | 'octagon' | 'overlap' | 'package-01' | 'package-02' | 'package-check' | 'package-minus' | 'package-plus' | 'package-x' | 'paint-bucket-01' | 'paint-bucket-02' | 'palette' | 'paperclip' | 'paperclip-01' | 'paperclip-02' | 'passport' | 'password-01' | 'password-02' | 'pause-01' | 'pause-02' | 'pause-03' | 'pen-tool-01' | 'pen-tool-02' | 'pen-tool-03' | 'pen-tool-04' | 'pencil-01' | 'pencil-02' | 'pencil-03' | 'pentagon' | 'percent-01' | 'percent-02' | 'percent-03' | 'perspective' | 'phone' | 'phone-call-01' | 'phone-call-02' | 'phone-down' | 'phone-incoming-01' | 'phone-incoming-02' | 'phone-off' | 'phone-outgoing-01' | 'phone-outgoing-02' | 'phone-up' | 'phone-x' | 'pie-chart-01' | 'pie-chart-02' | 'pie-chart-03' | 'plane' | 'play-01' | 'play-02' | 'play-03' | 'plug-01' | 'plus-01' | 'plus-02' | 'plus-03' | 'pointer-01' | 'pointer-02' | 'power' | 'presentation-01' | 'presentation-02' | 'presentation-03' | 'progress' | 'quote' | 'receipt' | 'receipt-lines' | 'refresh-01' | 'rss' | 'ruler' | 'save-01' | 'save-02' | 'scale-01' | 'scale-02' | 'scale-03' | 'scan' | 'scissors-01' | 'scissors-02' | 'scissors-03' | 'scissors-04' | 'search-01' | 'search-02' | 'send-01' | 'send-02' | 'send-03' | 'server-01' | 'server-02' | 'server-03' | 'server-04' | 'server-05' | 'server-06' | 'server-down' | 'server-up' | 'settings' | 'share' | 'shield-01' | 'shield-02' | 'shield-check' | 'shield-plus' | 'shuffle' | 'signal' | 'skew' | 'skip-back' | 'skip-forward' | 'slash-01-backward' | 'slash-01-forward' | 'slash-02-forward' | 'smiley-happy' | 'smiley-happy-plus' | 'smiley-neutral' | 'smiley-sad' | 'smiley-wink' | 'snowflake' | 'sort-horizontal' | 'sort-vertical-01' | 'sort-vertical-02' | 'space-height' | 'space-horizontal' | 'space-vertical' | 'space-width' | 'speaker' | 'square' | 'star-01' | 'star-02' | 'stars' | 'stop-01' | 'stop-02' | 'stopwatch-01' | 'stopwatch-02' | 'stopwatch-03' | 'stopwatch-04' | 'stopwatch-05' | 'stopwatch-off' | 'stopwatch-snooze' | 'sun-01' | 'sun-02' | 'sun-03' | 'sun-down' | 'sun-up' | 'superscript' | 'table' | 'tag' | 'target-01' | 'target-02' | 'target-03' | 'target-04' | 'temperature-01' | 'temperature-02' | 'temperature-03' | 'temperature-04' | 'terminal' | 'text-input-01' | 'text-input-02' | 'thumb-down' | 'thumb-up' | 'ticket-01' | 'ticket-02' | 'toggle-right' | 'toogle-left' | 'train' | 'transform' | 'trash-01' | 'trash-02' | 'trash-03' | 'trash-04' | 'trend-down-01' | 'trend-down-02' | 'trend-up-01' | 'trend-up-02' | 'triangle' | 'truck' | 'tv' | 'type-01' | 'type-02' | 'type-03' | 'type-strike-01' | 'type-strike-02' | 'umbrella' | 'umbrella-01' | 'umbrella-02' | 'underline-01' | 'underline-02' | 'union' | 'upload-01' | 'upload-02' | 'upload-03' | 'upload-04' | 'user-profile-01' | 'user-profile-02' | 'user-profile-03' | 'user-profile-add-01' | 'user-profile-add-02' | 'user-profile-check' | 'user-profile-circle' | 'user-profile-down' | 'user-profile-group' | 'user-profile-left' | 'user-profile-minus' | 'user-profile-right' | 'user-profile-square' | 'user-profile-star' | 'user-profile-up' | 'user-profile-x' | 'users-profiles-01' | 'users-profiles-02' | 'users-profiles-03' | 'users-profiles-check' | 'users-profiles-down' | 'users-profiles-left' | 'users-profiles-minus' | 'users-profiles-plus' | 'users-profiles-right' | 'users-profiles-up' | 'users-profiles-x' | 'variant' | 'video-off' | 'video-on' | 'volume-01' | 'volume-02' | 'volume-03' | 'volume-04' | 'volume-05' | 'volume-06' | 'volume-07' | 'wallert-04' | 'wallet-01' | 'wallet-02' | 'wallet-03' | 'watch-01' | 'watch-02' | 'waveform' | 'webcam' | 'wifi-off' | 'wifi-on' | 'wind-01' | 'wind-02' | 'wind-03' | 'wrench' | 'x-01' | 'x-02' | 'x-03' | 'x-circle-contained' | 'x-square-contained' | 'youtube' | 'zoom-in' | 'zoom-out' | 'custom-warning-xs-neutral';
6202
+
5741
6203
  /**
5742
6204
  * Global registry for SVG icons.
5743
6205
  *
@@ -5777,6 +6239,46 @@ declare class IconRegistry {
5777
6239
  static ɵprov: _angular_core.ɵɵInjectableDeclaration<IconRegistry>;
5778
6240
  }
5779
6241
 
6242
+ /**
6243
+ * Custom icon names — self-contained icons with built-in background and color.
6244
+ *
6245
+ * Naming: `custom-{state}-{size}-{style}`
6246
+ *
6247
+ * | State | Description |
6248
+ * |------------------|------------------------------------|
6249
+ * | check | Checkmark / completed |
6250
+ * | certificate | Certificate / credential |
6251
+ * | view | Eye / visibility |
6252
+ * | add | Plus / create |
6253
+ * | delete | Trash / remove |
6254
+ * | download | Download arrow |
6255
+ * | upload | Upload arrow |
6256
+ * | time | Clock / duration |
6257
+ * | slide | Presentation / slideshow |
6258
+ * | tools | Wrench / settings |
6259
+ * | doc | Document / file |
6260
+ * | info | Information circle |
6261
+ * | warning | Warning triangle |
6262
+ * | not-applicable | N/A / disabled |
6263
+ *
6264
+ * Sizes: xs (24), sm (32), md (40), lg (48), xl (56), 2xl (64)
6265
+ * Styles: active (colored), neutral (gray)
6266
+ *
6267
+ * Course-progress set (member dashboard tracker) — multi-color artwork icons
6268
+ * available in `md` only; `-off` source artwork maps to the `neutral` style:
6269
+ *
6270
+ * | State | Column |
6271
+ * |--------------------------------------------------------------------|-------------|
6272
+ * | content-classroom, content-selfstudy, content-elearning, | Content |
6273
+ * | content-liveonline, content-technical (active + neutral) | |
6274
+ * | att-acc, att-evaluate, att-na | Attendance |
6275
+ * | exam-passed, exam-schedule, exam-scheduled, exam-missed, | Exam |
6276
+ * | exam-failed, exam-waiting | |
6277
+ * | cert-view, cert-apply, cert-treatment, cert-refused | Certificate |
6278
+ * | amf-note, amf-note-paid | AMF/Renewal |
6279
+ */
6280
+ type CustomIconName = 'custom-add-2xl-active' | 'custom-add-2xl-neutral' | 'custom-add-lg-active' | 'custom-add-lg-neutral' | 'custom-add-md-active' | 'custom-add-md-neutral' | 'custom-add-sm-active' | 'custom-add-sm-neutral' | 'custom-add-xl-active' | 'custom-add-xl-neutral' | 'custom-add-xs-active' | 'custom-add-xs-neutral' | 'custom-amf-note-md-active' | 'custom-amf-note-paid-md-active' | 'custom-att-acc-md-active' | 'custom-att-evaluate-md-active' | 'custom-att-na-md-active' | 'custom-cert-apply-md-active' | 'custom-cert-refused-md-active' | 'custom-cert-treatment-md-active' | 'custom-cert-view-md-active' | 'custom-certificate-2xl-active' | 'custom-certificate-2xl-neutral' | 'custom-certificate-lg-active' | 'custom-certificate-lg-neutral' | 'custom-certificate-md-active' | 'custom-certificate-md-neutral' | 'custom-certificate-sm-active' | 'custom-certificate-sm-neutral' | 'custom-certificate-xl-active' | 'custom-certificate-xl-neutral' | 'custom-certificate-xs-active' | 'custom-certificate-xs-neutral' | 'custom-check-2xl-active' | 'custom-check-2xl-neutral' | 'custom-check-lg-active' | 'custom-check-lg-neutral' | 'custom-check-md-active' | 'custom-check-md-neutral' | 'custom-check-sm-active' | 'custom-check-sm-neutral' | 'custom-check-xl-active' | 'custom-check-xl-neutral' | 'custom-check-xs-active' | 'custom-check-xs-neutral' | 'custom-content-classroom-md-active' | 'custom-content-classroom-md-neutral' | 'custom-content-elearning-md-active' | 'custom-content-elearning-md-neutral' | 'custom-content-liveonline-md-active' | 'custom-content-liveonline-md-neutral' | 'custom-content-selfstudy-md-active' | 'custom-content-selfstudy-md-neutral' | 'custom-content-technical-md-active' | 'custom-content-technical-md-neutral' | 'custom-delete-2xl-active' | 'custom-delete-2xl-neutral' | 'custom-delete-lg-active' | 'custom-delete-lg-neutral' | 'custom-delete-md-active' | 'custom-delete-md-neutral' | 'custom-delete-sm-active' | 'custom-delete-sm-neutral' | 'custom-delete-xl-active' | 'custom-delete-xl-neutral' | 'custom-delete-xs-active' | 'custom-delete-xs-neutral' | 'custom-doc-2xl-active' | 'custom-doc-2xl-neutral' | 'custom-doc-lg-active' | 'custom-doc-lg-neutral' | 'custom-doc-md-active' | 'custom-doc-md-neutral' | 'custom-doc-sm-active' | 'custom-doc-sm-neutral' | 'custom-doc-xl-active' | 'custom-doc-xl-neutral' | 'custom-doc-xs-active' | 'custom-doc-xs-neutral' | 'custom-download-2xl-active' | 'custom-download-2xl-neutral' | 'custom-download-lg-active' | 'custom-download-lg-neutral' | 'custom-download-md-active' | 'custom-download-md-neutral' | 'custom-download-sm-active' | 'custom-download-sm-neutral' | 'custom-download-xl-active' | 'custom-download-xl-neutral' | 'custom-download-xs-active' | 'custom-download-xs-neutral' | 'custom-exam-failed-md-active' | 'custom-exam-missed-md-active' | 'custom-exam-passed-md-active' | 'custom-exam-schedule-md-active' | 'custom-exam-scheduled-md-active' | 'custom-exam-waiting-md-active' | 'custom-info-2xl-active' | 'custom-info-2xl-neutral' | 'custom-info-lg-active' | 'custom-info-lg-neutral' | 'custom-info-md-active' | 'custom-info-md-neutral' | 'custom-info-sm-active' | 'custom-info-sm-neutral' | 'custom-info-xl-active' | 'custom-info-xl-neutral' | 'custom-info-xs-active' | 'custom-info-xs-neutral' | 'custom-not-applicable-2xl-active' | 'custom-not-applicable-2xl-neutral' | 'custom-not-applicable-lg-active' | 'custom-not-applicable-lg-neutral' | 'custom-not-applicable-md-active' | 'custom-not-applicable-md-neutral' | 'custom-not-applicable-sm-active' | 'custom-not-applicable-sm-neutral' | 'custom-not-applicable-xl-active' | 'custom-not-applicable-xl-neutral' | 'custom-not-applicable-xs-active' | 'custom-not-applicable-xs-neutral' | 'custom-slide-2xl-active' | 'custom-slide-2xl-neutral' | 'custom-slide-lg-active' | 'custom-slide-lg-neutral' | 'custom-slide-md-active' | 'custom-slide-md-neutral' | 'custom-slide-sm-active' | 'custom-slide-sm-neutral' | 'custom-slide-xl-active' | 'custom-slide-xl-neutral' | 'custom-slide-xs-active' | 'custom-slide-xs-neutral' | 'custom-time-2xl-active' | 'custom-time-2xl-neutral' | 'custom-time-lg-active' | 'custom-time-lg-neutral' | 'custom-time-md-active' | 'custom-time-md-neutral' | 'custom-time-sm-active' | 'custom-time-sm-neutral' | 'custom-time-xl-active' | 'custom-time-xl-neutral' | 'custom-time-xs-active' | 'custom-time-xs-neutral' | 'custom-tools-2xl-active' | 'custom-tools-2xl-neutral' | 'custom-tools-lg-active' | 'custom-tools-lg-neutral' | 'custom-tools-md-active' | 'custom-tools-md-neutral' | 'custom-tools-sm-active' | 'custom-tools-sm-neutral' | 'custom-tools-xl-active' | 'custom-tools-xl-neutral' | 'custom-tools-xs-active' | 'custom-tools-xs-neutral' | 'custom-upload-2xl-active' | 'custom-upload-2xl-neutral' | 'custom-upload-lg-active' | 'custom-upload-lg-neutral' | 'custom-upload-md-active' | 'custom-upload-md-neutral' | 'custom-upload-sm-active' | 'custom-upload-sm-neutral' | 'custom-upload-xl-active' | 'custom-upload-xl-neutral' | 'custom-upload-xs-active' | 'custom-upload-xs-neutral' | 'custom-view-2xl-active' | 'custom-view-2xl-neutral' | 'custom-view-lg-active' | 'custom-view-lg-neutral' | 'custom-view-md-active' | 'custom-view-md-neutral' | 'custom-view-sm-active' | 'custom-view-sm-neutral' | 'custom-view-xl-active' | 'custom-view-xl-neutral' | 'custom-view-xs-active' | 'custom-view-xs-neutral' | 'custom-warning-2xl-active' | 'custom-warning-2xl-neutral' | 'custom-warning-lg-active' | 'custom-warning-lg-neutral' | 'custom-warning-md-active' | 'custom-warning-md-neutral' | 'custom-warning-sm-active' | 'custom-warning-sm-neutral' | 'custom-warning-xl-active' | 'custom-warning-xl-neutral' | 'custom-warning-xs-active' | 'custom-warning-xs-neutral';
6281
+
5780
6282
  /**
5781
6283
  * Map of every PECB icon name to its inline SVG string.
5782
6284
  *
@@ -5936,6 +6438,7 @@ declare class DashboardGridComponent {
5936
6438
  type ProgressType = 'bar' | 'circle' | 'spinner';
5937
6439
  type ProgressBarSize = 'sm' | 'lg';
5938
6440
  type ProgressCircleSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl';
6441
+ type ProgressArcSize = 'sm' | 'md' | 'lg';
5939
6442
  declare class SpinnerComponent {
5940
6443
  id: _angular_core.InputSignal<string>;
5941
6444
  size: _angular_core.InputSignal<number>;
@@ -5990,6 +6493,41 @@ declare class ProgressCircleComponent {
5990
6493
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<ProgressCircleComponent, never>;
5991
6494
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<ProgressCircleComponent, "pecb-progress-circle", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "showPercentage": { "alias": "showPercentage"; "required": false; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
5992
6495
  }
6496
+ /**
6497
+ * Half-round (180°) progress gauge with a "value/max" label under the arc —
6498
+ * e.g. the CPD column of the member dashboard's course progress tracker
6499
+ * ("170/180"). Green as soon as there is any progress, muted at zero.
6500
+ *
6501
+ * @example
6502
+ * <pecb-progress-arc [value]="170" [max]="180" />
6503
+ */
6504
+ declare class ProgressArcComponent {
6505
+ id: _angular_core.InputSignal<string>;
6506
+ /** Current value (e.g. CPD credits earned) */
6507
+ value: _angular_core.InputSignal<number>;
6508
+ /** Target value the arc fills towards (e.g. CPD credits required) */
6509
+ max: _angular_core.InputSignal<number>;
6510
+ /** Show the "value/max" label under the arc */
6511
+ showLabel: _angular_core.InputSignal<boolean>;
6512
+ /** Gauge width: sm (48px), md (60px), lg (80px) */
6513
+ size: _angular_core.InputSignal<ProgressArcSize>;
6514
+ /** Custom fill color — overrides the automatic green/muted coloring */
6515
+ color: _angular_core.InputSignal<string>;
6516
+ ariaLabel: _angular_core.InputSignal<string>;
6517
+ private readonly arcLength;
6518
+ private readonly sizeMap;
6519
+ private readonly fontSizeMap;
6520
+ widthValue: _angular_core.Signal<number>;
6521
+ heightValue: _angular_core.Signal<number>;
6522
+ fontSize: _angular_core.Signal<number>;
6523
+ clampedValue: _angular_core.Signal<number>;
6524
+ percent: _angular_core.Signal<number>;
6525
+ dashArray: _angular_core.Signal<string>;
6526
+ fillColor: _angular_core.Signal<string>;
6527
+ get arcClasses(): string[];
6528
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ProgressArcComponent, never>;
6529
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<ProgressArcComponent, "pecb-progress-arc", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "showLabel": { "alias": "showLabel"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
6530
+ }
5993
6531
 
5994
6532
  type CodeInputState = 'default' | 'error';
5995
6533
  type CodeInputDirection = 'horizontal' | 'vertical';
@@ -6988,83 +7526,6 @@ declare class ExpandableRowTableComponent {
6988
7526
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<ExpandableRowTableComponent, "pecb-expandable-row-table", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "columns": { "alias": "columns"; "required": false; "isSignal": true; }; "data": { "alias": "data"; "required": false; "isSignal": true; }; "progressConfig": { "alias": "progressConfig"; "required": false; "isSignal": true; }; "expandable": { "alias": "expandable"; "required": false; "isSignal": true; }; "showToolbar": { "alias": "showToolbar"; "required": false; "isSignal": true; }; "actionLabel": { "alias": "actionLabel"; "required": false; "isSignal": true; }; "searchPlaceholder": { "alias": "searchPlaceholder"; "required": false; "isSignal": true; }; "showSearch": { "alias": "showSearch"; "required": false; "isSignal": true; }; "showFilter": { "alias": "showFilter"; "required": false; "isSignal": true; }; "showPagination": { "alias": "showPagination"; "required": false; "isSignal": true; }; "totalItems": { "alias": "totalItems"; "required": false; "isSignal": true; }; "pageSize": { "alias": "pageSize"; "required": false; "isSignal": true; }; "currentPage": { "alias": "currentPage"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "filterAriaLabel": { "alias": "filterAriaLabel"; "required": false; "isSignal": true; }; "expandHeaderLabel": { "alias": "expandHeaderLabel"; "required": false; "isSignal": true; }; "expandRowAriaLabel": { "alias": "expandRowAriaLabel"; "required": false; "isSignal": true; }; "collapseRowAriaLabel": { "alias": "collapseRowAriaLabel"; "required": false; "isSignal": true; }; "previousPageAriaLabel": { "alias": "previousPageAriaLabel"; "required": false; "isSignal": true; }; "nextPageAriaLabel": { "alias": "nextPageAriaLabel"; "required": false; "isSignal": true; }; "pageAriaLabel": { "alias": "pageAriaLabel"; "required": false; "isSignal": true; }; "itemsPerPageLabel": { "alias": "itemsPerPageLabel"; "required": false; "isSignal": true; }; "itemsInfoTemplate": { "alias": "itemsInfoTemplate"; "required": false; "isSignal": true; }; }, { "rowToggled": "rowToggled"; "actionClicked": "actionClicked"; "searchChanged": "searchChanged"; "filterClicked": "filterClicked"; "pageChanged": "pageChanged"; }, ["expandedRowTemplate"], ["[toolbarLeft]", "[toolbarRight]"], true, never>;
6989
7527
  }
6990
7528
 
6991
- /**
6992
- * Badge variant type.
6993
- * - `dot`: small 6px red dot indicator
6994
- * - `count`: numbered badge (default or small size)
6995
- * - `status`: colored dot + text label
6996
- * - `ribbon`: colored tag with bottom-right arrow fold
6997
- */
6998
- type BadgeVariant = 'dot' | 'count' | 'status' | 'ribbon';
6999
- /**
7000
- * Count badge size.
7001
- * - `default`: 20px height, 14px font
7002
- * - `small`: 14px height, 12px font
7003
- */
7004
- type BadgeSize = 'default' | 'small';
7005
- /**
7006
- * Status badge type — determines the dot color.
7007
- */
7008
- type BadgeStatus = 'success' | 'error' | 'default' | 'processing' | 'warning';
7009
- /**
7010
- * Ribbon badge color.
7011
- */
7012
- type RibbonColor = 'blue' | 'orange' | 'gray' | 'red' | 'purple' | 'green' | 'black';
7013
- /**
7014
- * Badge component matching the PECB Figma design system.
7015
- *
7016
- * Three sub-types: Basic (dot/count), Status (dot + label), Ribbon (colored tag).
7017
- *
7018
- * @example
7019
- * ```html
7020
- * <!-- Dot indicator -->
7021
- * <pecb-badge variant="dot"></pecb-badge>
7022
- *
7023
- * <!-- Count badge -->
7024
- * <pecb-badge variant="count" [count]="21"></pecb-badge>
7025
- * <pecb-badge variant="count" [count]="5" size="small"></pecb-badge>
7026
- *
7027
- * <!-- Status badge -->
7028
- * <pecb-badge variant="status" status="success"></pecb-badge>
7029
- * <pecb-badge variant="status" status="error" label="Failed"></pecb-badge>
7030
- *
7031
- * <!-- Ribbon badge -->
7032
- * <pecb-badge variant="ribbon" ribbonColor="blue" text="New"></pecb-badge>
7033
- * ```
7034
- */
7035
- declare class BadgeComponent {
7036
- /** Unique element ID */
7037
- id: _angular_core.InputSignal<string>;
7038
- /** Badge variant */
7039
- variant: _angular_core.InputSignal<BadgeVariant>;
7040
- /** Count number (for variant='count') */
7041
- count: _angular_core.InputSignal<number>;
7042
- /** Max count before showing "99+" (for variant='count') */
7043
- maxCount: _angular_core.InputSignal<number>;
7044
- /** Count badge size */
7045
- size: _angular_core.InputSignal<BadgeSize>;
7046
- /** Status type (for variant='status') */
7047
- status: _angular_core.InputSignal<BadgeStatus>;
7048
- /** Label text (for variant='status'). Defaults to the status name. */
7049
- label: _angular_core.InputSignal<string>;
7050
- /** Whether to show the label text (for variant='status') */
7051
- showLabel: _angular_core.InputSignal<boolean>;
7052
- /** Ribbon color (for variant='ribbon') */
7053
- ribbonColor: _angular_core.InputSignal<RibbonColor>;
7054
- /** Ribbon/badge text (for variant='ribbon') */
7055
- text: _angular_core.InputSignal<string>;
7056
- /** Aria-label for the dot indicator (variant='dot'). */
7057
- notificationAriaLabel: _angular_core.InputSignal<string>;
7058
- /** Word appended after the count in the count badge's aria-label (variant='count'). */
7059
- notificationsLabel: _angular_core.InputSignal<string>;
7060
- /** Formatted count display */
7061
- displayCount: _angular_core.Signal<string>;
7062
- /** Status label — uses explicit label or falls back to status name */
7063
- statusLabel: _angular_core.Signal<string>;
7064
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<BadgeComponent, never>;
7065
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<BadgeComponent, "pecb-badge", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "count": { "alias": "count"; "required": false; "isSignal": true; }; "maxCount": { "alias": "maxCount"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "status": { "alias": "status"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "showLabel": { "alias": "showLabel"; "required": false; "isSignal": true; }; "ribbonColor": { "alias": "ribbonColor"; "required": false; "isSignal": true; }; "text": { "alias": "text"; "required": false; "isSignal": true; }; "notificationAriaLabel": { "alias": "notificationAriaLabel"; "required": false; "isSignal": true; }; "notificationsLabel": { "alias": "notificationsLabel"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
7066
- }
7067
-
7068
7529
  /**
7069
7530
  * Position of the sticky (affix) panel.
7070
7531
  * - `left`: sticky panel on the left, scrollable content on the right
@@ -7935,7 +8396,7 @@ declare class FilterColumnsComponent implements OnInit, OnChanges, OnDestroy, Af
7935
8396
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<FilterColumnsComponent, "pecb-filter-columns", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "isOpen": { "alias": "isOpen"; "required": false; "isSignal": true; }; "closeOnBackdropClick": { "alias": "closeOnBackdropClick"; "required": false; "isSignal": true; }; "closeOnEscape": { "alias": "closeOnEscape"; "required": false; "isSignal": true; }; "filterFields": { "alias": "filterFields"; "required": false; "isSignal": true; }; "columns": { "alias": "columns"; "required": false; "isSignal": true; }; "activeTab": { "alias": "activeTab"; "required": false; "isSignal": true; }; "showSaveAsView": { "alias": "showSaveAsView"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "applyLabel": { "alias": "applyLabel"; "required": false; "isSignal": true; }; "cancelLabel": { "alias": "cancelLabel"; "required": false; "isSignal": true; }; "filtersTabLabel": { "alias": "filtersTabLabel"; "required": false; "isSignal": true; }; "columnsTabLabel": { "alias": "columnsTabLabel"; "required": false; "isSignal": true; }; "columnsDescription": { "alias": "columnsDescription"; "required": false; "isSignal": true; }; "selectAllLabel": { "alias": "selectAllLabel"; "required": false; "isSignal": true; }; "deselectAllLabel": { "alias": "deselectAllLabel"; "required": false; "isSignal": true; }; "resetLabel": { "alias": "resetLabel"; "required": false; "isSignal": true; }; "columnsWarning": { "alias": "columnsWarning"; "required": false; "isSignal": true; }; "saveAsViewLabel": { "alias": "saveAsViewLabel"; "required": false; "isSignal": true; }; "viewNameLabel": { "alias": "viewNameLabel"; "required": false; "isSignal": true; }; "setDefaultViewLabel": { "alias": "setDefaultViewLabel"; "required": false; "isSignal": true; }; }, { "isOpen": "isOpenChange"; "applied": "applied"; "cancelled": "cancelled"; "closed": "closed"; }, never, never, true, never>;
7936
8397
  }
7937
8398
 
7938
- type FileUploadVariant = 'dropzone' | 'inline';
8399
+ type FileUploadVariant = 'dropzone' | 'inline' | 'compact';
7939
8400
  type FileUploadState = 'default' | 'uploading' | 'complete' | 'error';
7940
8401
  interface UploadedFile {
7941
8402
  id: string;
@@ -7956,6 +8417,10 @@ declare class FileUploadComponent implements OnInit {
7956
8417
  id: _angular_core.InputSignal<string>;
7957
8418
  /** Visual variant: dropzone (big area) or inline (compact row) */
7958
8419
  variant: _angular_core.InputSignal<FileUploadVariant>;
8420
+ /** compact variant: text before the browse link */
8421
+ compactText: _angular_core.InputSignal<string>;
8422
+ /** compact variant: the highlighted browse link */
8423
+ compactBrowseLabel: _angular_core.InputSignal<string>;
7959
8424
  /** Whether multiple files can be uploaded */
7960
8425
  multiple: _angular_core.InputSignal<boolean>;
7961
8426
  /** Accepted file types (e.g. '.pdf,.png,.jpg') */
@@ -8064,7 +8529,7 @@ declare class FileUploadComponent implements OnInit {
8064
8529
  formatFileDate(date: Date): string;
8065
8530
  getFileTypeColor(type: string): string;
8066
8531
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<FileUploadComponent, never>;
8067
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<FileUploadComponent, "pecb-file-upload", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "multiple": { "alias": "multiple"; "required": false; "isSignal": true; }; "accept": { "alias": "accept"; "required": false; "isSignal": true; }; "maxFileSize": { "alias": "maxFileSize"; "required": false; "isSignal": true; }; "maxFiles": { "alias": "maxFiles"; "required": false; "isSignal": true; }; "uploadTitle": { "alias": "uploadTitle"; "required": false; "isSignal": true; }; "uploadDescription": { "alias": "uploadDescription"; "required": false; "isSignal": true; }; "maxSizeLabel": { "alias": "maxSizeLabel"; "required": false; "isSignal": true; }; "acceptedFormatsText": { "alias": "acceptedFormatsText"; "required": false; "isSignal": true; }; "browseLabel": { "alias": "browseLabel"; "required": false; "isSignal": true; }; "uploadLabel": { "alias": "uploadLabel"; "required": false; "isSignal": true; }; "clickToUploadText": { "alias": "clickToUploadText"; "required": false; "isSignal": true; }; "dragAndDropText": { "alias": "dragAndDropText"; "required": false; "isSignal": true; }; "orDividerText": { "alias": "orDividerText"; "required": false; "isSignal": true; }; "uploadingTitle": { "alias": "uploadingTitle"; "required": false; "isSignal": true; }; "clearUploadText": { "alias": "clearUploadText"; "required": false; "isSignal": true; }; "failedToUploadText": { "alias": "failedToUploadText"; "required": false; "isSignal": true; }; "defaultErrorMessage": { "alias": "defaultErrorMessage"; "required": false; "isSignal": true; }; "tryAgainText": { "alias": "tryAgainText"; "required": false; "isSignal": true; }; "uploadedFilesLabel": { "alias": "uploadedFilesLabel"; "required": false; "isSignal": true; }; "closeAriaLabel": { "alias": "closeAriaLabel"; "required": false; "isSignal": true; }; "cancelUploadAriaLabel": { "alias": "cancelUploadAriaLabel"; "required": false; "isSignal": true; }; "deleteFileAriaLabel": { "alias": "deleteFileAriaLabel"; "required": false; "isSignal": true; }; "downloadFileAriaLabel": { "alias": "downloadFileAriaLabel"; "required": false; "isSignal": true; }; "uploadedSuffix": { "alias": "uploadedSuffix"; "required": false; "isSignal": true; }; "uploadFileAriaLabelPrefix": { "alias": "uploadFileAriaLabelPrefix"; "required": false; "isSignal": true; }; "uploadFilesAriaLabelPrefix": { "alias": "uploadFilesAriaLabelPrefix"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "showHeader": { "alias": "showHeader"; "required": false; "isSignal": true; }; "initialFiles": { "alias": "initialFiles"; "required": false; "isSignal": true; }; }, { "filesSelected": "filesSelected"; "fileCancelled": "fileCancelled"; "fileRetry": "fileRetry"; "fileDeleted": "fileDeleted"; "fileDownload": "fileDownload"; "cleared": "cleared"; "closeClicked": "closeClicked"; }, never, never, true, never>;
8532
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<FileUploadComponent, "pecb-file-upload", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "compactText": { "alias": "compactText"; "required": false; "isSignal": true; }; "compactBrowseLabel": { "alias": "compactBrowseLabel"; "required": false; "isSignal": true; }; "multiple": { "alias": "multiple"; "required": false; "isSignal": true; }; "accept": { "alias": "accept"; "required": false; "isSignal": true; }; "maxFileSize": { "alias": "maxFileSize"; "required": false; "isSignal": true; }; "maxFiles": { "alias": "maxFiles"; "required": false; "isSignal": true; }; "uploadTitle": { "alias": "uploadTitle"; "required": false; "isSignal": true; }; "uploadDescription": { "alias": "uploadDescription"; "required": false; "isSignal": true; }; "maxSizeLabel": { "alias": "maxSizeLabel"; "required": false; "isSignal": true; }; "acceptedFormatsText": { "alias": "acceptedFormatsText"; "required": false; "isSignal": true; }; "browseLabel": { "alias": "browseLabel"; "required": false; "isSignal": true; }; "uploadLabel": { "alias": "uploadLabel"; "required": false; "isSignal": true; }; "clickToUploadText": { "alias": "clickToUploadText"; "required": false; "isSignal": true; }; "dragAndDropText": { "alias": "dragAndDropText"; "required": false; "isSignal": true; }; "orDividerText": { "alias": "orDividerText"; "required": false; "isSignal": true; }; "uploadingTitle": { "alias": "uploadingTitle"; "required": false; "isSignal": true; }; "clearUploadText": { "alias": "clearUploadText"; "required": false; "isSignal": true; }; "failedToUploadText": { "alias": "failedToUploadText"; "required": false; "isSignal": true; }; "defaultErrorMessage": { "alias": "defaultErrorMessage"; "required": false; "isSignal": true; }; "tryAgainText": { "alias": "tryAgainText"; "required": false; "isSignal": true; }; "uploadedFilesLabel": { "alias": "uploadedFilesLabel"; "required": false; "isSignal": true; }; "closeAriaLabel": { "alias": "closeAriaLabel"; "required": false; "isSignal": true; }; "cancelUploadAriaLabel": { "alias": "cancelUploadAriaLabel"; "required": false; "isSignal": true; }; "deleteFileAriaLabel": { "alias": "deleteFileAriaLabel"; "required": false; "isSignal": true; }; "downloadFileAriaLabel": { "alias": "downloadFileAriaLabel"; "required": false; "isSignal": true; }; "uploadedSuffix": { "alias": "uploadedSuffix"; "required": false; "isSignal": true; }; "uploadFileAriaLabelPrefix": { "alias": "uploadFileAriaLabelPrefix"; "required": false; "isSignal": true; }; "uploadFilesAriaLabelPrefix": { "alias": "uploadFilesAriaLabelPrefix"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "showHeader": { "alias": "showHeader"; "required": false; "isSignal": true; }; "initialFiles": { "alias": "initialFiles"; "required": false; "isSignal": true; }; }, { "filesSelected": "filesSelected"; "fileCancelled": "fileCancelled"; "fileRetry": "fileRetry"; "fileDeleted": "fileDeleted"; "fileDownload": "fileDownload"; "cleared": "cleared"; "closeClicked": "closeClicked"; }, never, never, true, never>;
8068
8533
  }
8069
8534
 
8070
8535
  type ToolbarVariant = 'buttons' | 'tabs';
@@ -8364,5 +8829,233 @@ declare class TourComponent implements OnInit, OnChanges {
8364
8829
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<TourComponent, "pecb-tour", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "type": { "alias": "type"; "required": false; "isSignal": true; }; "placement": { "alias": "placement"; "required": false; "isSignal": true; }; "indicatorType": { "alias": "indicatorType"; "required": false; "isSignal": true; }; "steps": { "alias": "steps"; "required": false; "isSignal": true; }; "isOpen": { "alias": "isOpen"; "required": false; "isSignal": true; }; "previousLabel": { "alias": "previousLabel"; "required": false; "isSignal": true; }; "nextLabel": { "alias": "nextLabel"; "required": false; "isSignal": true; }; "finishLabel": { "alias": "finishLabel"; "required": false; "isSignal": true; }; "closeAriaLabel": { "alias": "closeAriaLabel"; "required": false; "isSignal": true; }; "initialStep": { "alias": "initialStep"; "required": false; "isSignal": true; }; }, { "isOpen": "isOpenChange"; "closed": "closed"; "previousClicked": "previousClicked"; "nextClicked": "nextClicked"; "finished": "finished"; "stepChanged": "stepChanged"; }, never, never, true, never>;
8365
8830
  }
8366
8831
 
8367
- export { APP_HEADER_TRANSLATIONS, APP_SHELL_LOCALES, APP_SIDEBAR_MENU_ICONS, APP_SIDEBAR_MENU_TRANSLATIONS, APP_SIDEBAR_TRANSLATIONS, AccordionItemComponent, AccordionSmallComponent, AddButtonComponent, AdminHeaderComponent, AdminHeaderFieldTemplateDirective, AffixComponent, AlertComponent, AnchorComponent, AppHeaderComponent, AppSidebarComponent, ApplicationStatusBarComponent, AuditorStatusComponent, AuthorDateTimeComponent, BackToTopComponent, BadgeComponent, BlurDirective, BottomSheetComponent, BreadcrumbsComponent, ButtonComponent, ButtonGroupComponent, ButtonGroupItemComponent, CancelUpdateButtonsComponent, CardBodyComponent, CardComponent, CardFooterComponent, CardHeaderComponent, CertificateUploadBarComponent, CheckDeleteIconComponent, CheckboxComponent, CheckboxDisplayComponent, CodeInputComponent, CodeSnippetComponent, ColorPaletteComponent, ConfirmationComponent, ContentTypeTagComponent, CourseContentPanelComponent, CoursePlayerComponent, DEFAULT_APP_HEADER_LABELS, DEFAULT_APP_SIDEBAR_LABELS, DEFAULT_APP_SIDEBAR_LANGUAGES, DEFAULT_APP_SIDEBAR_MENU, DEFAULT_APP_SIDEBAR_ROLES, DEFAULT_COURSE_CONTENT_PANEL_LABELS, DEFAULT_LANGUAGES, DEFAULT_VIDEO_PLAYER_LABELS, DEFAULT_VIDEO_PLAYER_RATES, DashboardGridComponent, DatepickerComponent, DividerComponent, DropdownComponent, EMPTY_STATE_MAX_BUTTONS, EditButtonComponent, EditCoverPhotoComponent, EmptyStateComponent, ExpandableRowTableComponent, FileUploadComponent, FilterColumnsComponent, FloatButtonComponent, FloatButtonItemComponent, FullscreenModalComponent, FullscreenModalContentDirective, FullscreenModalFooterDirective, FullscreenModalHeaderDirective, GeneralComponent, GridComponent, GridItemComponent, HeaderActionsComponent, HeaderComponent, HeaderDividerComponent, HeaderLanguageComponent, HeaderSearchComponent, HeaderUserComponent, HierarchicalTableComponent, HorizontalStepsComponent, IconComponent, IconRegistry, IconTagComponent, InformationBoxComponent, InputComponent, LanguageDropdownComponent, LinkButtonComponent, LoadingService, MediaComponent, MessageBubbleComponent, MessageItemComponent, MetricsCardComponent, MiniIconButtonComponent, NoResultsComponent, NoteSidebarItemComponent, NotesPanelComponent, NotificationService, NotificationStatusLinkComponent, PECB_COLOR_PALETTE, PECB_CUSTOM_ICONS, PECB_FONT_STYLES, PECB_ICONS, PECB_TYPE_SCALE, PaginationComponent, PriceMethodComponent, ProfileComponent, ProfileElementsCardComponent, ProfileGroupComponent, ProgressBarComponent, ProgressCircleComponent, ProjectLayoutComponent, QuantitySelectorComponent, QuestionTypeTagComponent, RadioComponent, RadioDisplayComponent, RatingNumberComponent, ReasonForReturnComponent, RequestSentByComponent, RequestStatusBarComponent, ResultPageComponent, RightModalComponent, RightModalContentDirective, RightModalFooterDirective, RightModalHeaderDirective, ShadowDirective, SidebarComponent, SkeletonComponent, SlidePointsComponent, SpacerComponent, SpinnerComponent, StandardsPdfCardComponent, StatisticsCardComponent, StatusComponent, StepperComponent, TabComponent, TableComponent, TagComponent, TestimonialComponent, TextFormFieldComponent, ThemeService, ToggleComponent, ToolbarBarComponent, TooltipComponent, TooltipDirective, TourComponent, TranscriptLineComponent, TypographyComponent, UserWithEmailComponent, VerifyChecklistComponent, VideoPlayerComponent, VideoUploadBarComponent, VirtualTableComponent, addClass, announceToScreenReader, appHeaderLabels, appSidebarLabels, appSidebarMenu, appSidebarRoles, capitalize, closestElement, copyToClipboard, courseModuleStats, courseProgress, createAuthError, createAuthorizationError, createConfigError, createError, createNetworkError, createValidationError, disableBodyScroll, escapeHtml, findCourseLesson, findCourseModule, formatCount, formatCourseDuration, formatCourseTime, formatErrorForLog, formatErrorMessage, formatVideoTime, generateLinkedIds, generateUniqueId, getAriaCurrent, getButtonAriaAttributes, getComputedStyleValue, getDialogAriaAttributes, getFocusableElements, getInitials, getInputAriaAttributes, getOptionAriaAttributes, getProgressAriaAttributes, getScrollParent, getTabAriaAttributes, getVisuallyHiddenStyles, handleError, hasClass, isBlank, isBrowser, isElementVisible, isNotBlank, isPecbError, isRecoverableError, matchesSelector, parseLessonPartTitle, pluralize, prefersHighContrast, prefersReducedMotion, registerErrorHandler, removeClass, resolveAppShellLocale, resolveLessonStatus, scrollIntoView, slugify, stripHtml, toCamelCase, toKebabCase, toPascalCase, toSnakeCase, toggleClass, trapFocus, truncate, tryAsync, trySync, wrapError };
8368
- export type { AccordionVariant, AddButtonVariant, AdminHeaderAction, AdminHeaderActionType, AdminHeaderBadgeVariant, AdminHeaderField, AdminHeaderFieldType, AdminHeaderMetadata, AdminHeaderMetadataType, AdminHeaderProfile, AffixPosition, AlertType, AlertVariant, Alignment, AnchorDirection, AnchorItem, AnchorLevel, AnimationTiming, AppHeaderAction, AppHeaderChip, AppHeaderChipTone, AppHeaderLabels, AppHeaderNotification, AppShellLocale, AppShellTranslations, AppSidebarLabels, AppSidebarMenuItem, AppSidebarMenuOption, AppSidebarMenuOptionChange, AppSidebarMenuStrings, AppSidebarNavGroup, AppSidebarNavItem, AppSidebarProduct, AppSidebarRouterLink, AppSidebarUser, AppStatusColor, AriaAttributes, AriaLive, AriaRole, AuditorStatusType, BadgeSize, BadgeStatus, BadgeVariant, BlurSize, BreadcrumbItem, BreadcrumbSeparator, Breakpoint, ButtonGroupIconMode, ButtonGroupItemPosition, ButtonIconStyle, ButtonSize, ButtonVariant, CalendarDay, Callback, CardElevation, CardRadius, CardRole, CheckDeleteType, CheckboxDisplayState, CheckboxLabelPosition, ClosableWithHooks, CodeInputDirection, CodeInputState, CodeSnippetTheme, CodeSnippetVariant, ColorPaletteGroup, ColorPaletteItem, ColorVariant, Colorable, ColumnOption, ComponentSize, ConfirmationIconType, ContentStyle, ContentTagDisplay, ContentTagType, CourseContentPanelAccent, CourseContentPanelDensity, CourseContentPanelLabels, CourseContentPanelLayout, CourseContentPanelTab, CourseLesson, CourseLessonRunView, CourseLessonStatus, CourseLessonType, CourseLessonView, CourseModule, CourseModuleStats, CourseModuleView, CoursePlayerPanelPosition, CourseProgressStats, CourseTimelineRow, CourseTranscriptCue, CourseTranscriptRow, CustomIconName, DashboardGridGap, DashboardGridLayout, DatepickerSize, Direction, Disableable, DividerType, DropdownOption, DropdownSize, EditButtonVariant, ElevationLevel, EmptyStateButton, EmptyStateIconTheme, ErrorCategory, ErrorHandler, ErrorOptions, ErrorSeverity, EventHandler, ExpandableRowColumn, ExpandableRowPageEvent, ExpandableRowProgressConfig, ExtendedColorVariant, FieldItem, FieldStyle, FileUploadEvent, FileUploadState, FileUploadVariant, FilterColumnsActiveTab, FilterColumnsApplyEvent, FilterField, FilterFieldType, FilterState, FloatButtonAction, FloatButtonPosition, Focusable, FormControlBase, GridAlign, GridColumns, GridGap, GridItemSpan, GridPadding, GridVerticalAlign, HeaderActionButton, HeaderLanguageOption, HeaderSearchCategory, HeaderSearchType, HierarchicalTableAction, HierarchicalTableColumn, HierarchicalTablePageEvent, IconColor, IconName, IconShape, IconSize, IconTagType, InformationBoxVariant, InputSize, InputType, LanguageDisplayMode, LanguageOption, LinkButtonType, Loadable, LoadingState, MarkedDate, MediaGroup, MediaItem, MediaSize, MediaType, MenuItem, MessageBubbleType, MessageDirection, MessageItemStatus, MetricsCardBadgeStatus, MetricsCardIconBg, MetricsCardOrientation, MetricsCardType, MetricsCardVariation, MiniIconAction, NonNullableProps, NoteGroup, NoteItem, NoteSidebarPosition, NoteSidebarState, Notification, NotificationConfig, NotificationPosition, NotificationStatusType, NotificationType, OptionalProps, Orientation, OverlayComponent, PageChangeEvent, PaginationSize, PaginationState, PaginationVariant, PdfCardVariant, PecbError, PecbTableColumn, PecbTableColumnComponent, PecbTableColumnType, Position, ProfileBadge, ProfileGroupItem, ProfileGroupSize, ProfileIndicator, ProfileSize, ProfileType, ProgressBarSize, ProgressCircleSize, ProgressType, QuestionTagDisplay, QuestionTagType, QuizType, RadioDisplayState, RadioLabelPosition, RadioVariant, RadiusScale, RatingStyle, RequestStatusIconType, RequireProps, ResultPageAction, ResultPageIcon, RibbonColor, RightModalSize, SearchMode, SelectableItem, ShadowHardSize, ShadowSize, ShadowSoftSize, ShadowType, SidebarMenuItem, SidebarSection, Size, Sizeable, SkeletonShape, SkeletonSize, SkeletonType, SortState, SpacerSize, SpacingScale, StateVariant, StatisticsIconColor, StatusColor, StatusSize, StatusType, StatusVariant, StepItem, StepOrder, StepState, StepperDirection, StepperSize, StepperTailStyle, StepperType, TabItem, TabSize, TabStyle, TableAction, TableColumn, TableRowActionEvent, TableSelectionEvent, TableSize, TableSortEvent, TableStatusConfig, TableUserConfig, TableVariant, TagAction, TagStyle, Templatable, TestimonialData, TestimonialVariant, TextFormFieldType, ThemeConfig, ThemeMode, ThemeVariables, ToggleLabelPosition, ToggleSize, ToolbarButton, ToolbarTab, ToolbarVariant, TooltipPointerPosition, TooltipTheme, TourIndicatorType, TourPlacement, TourStep, TourType, TranscriptLineState, TreeNode, TypographyScaleEntry, TypographyStyleEntry, UploadedFile, Validatable, ValidationError, ValidationState, VerifyChecklistItem, VerifyItemStatus, VideoPlayerError, VideoPlayerLabels, VideoPlayerPreload, VideoPlayerSource, VideoPlayerTimeEvent, VideoPlayerTrack, VirtualTableColumn, VirtualTablePageEvent, VirtualTableProgressConfig };
8832
+ /**
8833
+ * Card size:
8834
+ * - 'default' — program cards (80px icon tile, 19px title, description)
8835
+ * - 'compact' — application cards (64px icon tile, 16px title)
8836
+ */
8837
+ type HubCardSize = 'default' | 'compact';
8838
+ /**
8839
+ * Central Hub navigation card — an icon tile, a title, an optional
8840
+ * description and an optional status badge (e.g. "Soon").
8841
+ *
8842
+ * Renders as an `<a>` when [href] is set (and the card is enabled),
8843
+ * otherwise as a keyboard-accessible button-like element that emits
8844
+ * (cardClick).
8845
+ *
8846
+ * The icon can be provided three ways (first match wins):
8847
+ * 1. [iconSrc] — image URL (svg/png)
8848
+ * 2. [iconSvg] — raw SVG string (sanitized internally)
8849
+ * 3. projected content marked with the `hubCardIcon` attribute
8850
+ */
8851
+ declare class HubCardComponent {
8852
+ private sanitizer;
8853
+ /** Card title (required) */
8854
+ title: _angular_core.InputSignal<string>;
8855
+ /** Supporting text under the title; hidden when empty */
8856
+ description: _angular_core.InputSignal<string>;
8857
+ /** 'default' for program cards, 'compact' for application cards */
8858
+ size: _angular_core.InputSignal<HubCardSize>;
8859
+ /** Badge shown in the top-right corner (e.g. "Soon"); hidden when empty */
8860
+ badgeText: _angular_core.InputSignal<string>;
8861
+ /** Disables interaction and dims the card */
8862
+ disabled: _angular_core.InputSignal<boolean>;
8863
+ /** When set, the card renders as a link */
8864
+ href: _angular_core.InputSignal<string>;
8865
+ /** Link target, e.g. "_blank" — only used together with [href] */
8866
+ target: _angular_core.InputSignal<string>;
8867
+ /** Icon image URL — rendered inside the icon tile */
8868
+ iconSrc: _angular_core.InputSignal<string>;
8869
+ /** Raw SVG string for the icon — used when [iconSrc] is empty */
8870
+ iconSvg: _angular_core.InputSignal<string>;
8871
+ /** Emitted on click / Enter / Space when the card has no [href] */
8872
+ cardClick: _angular_core.OutputEmitterRef<void>;
8873
+ /** Card renders as a link only when enabled and an href is provided */
8874
+ isLink: _angular_core.Signal<boolean>;
8875
+ /** rel="noopener noreferrer" is applied automatically for target="_blank" */
8876
+ rel: _angular_core.Signal<"noopener noreferrer" | null>;
8877
+ safeIconSvg: _angular_core.Signal<_angular_platform_browser.SafeHtml | null>;
8878
+ hostClasses: _angular_core.Signal<string>;
8879
+ onActivate(event: Event): void;
8880
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<HubCardComponent, never>;
8881
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<HubCardComponent, "pecb-hub-card", never, { "title": { "alias": "title"; "required": true; "isSignal": true; }; "description": { "alias": "description"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "badgeText": { "alias": "badgeText"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "href": { "alias": "href"; "required": false; "isSignal": true; }; "target": { "alias": "target"; "required": false; "isSignal": true; }; "iconSrc": { "alias": "iconSrc"; "required": false; "isSignal": true; }; "iconSvg": { "alias": "iconSvg"; "required": false; "isSignal": true; }; }, { "cardClick": "cardClick"; }, never, ["[hubCardIcon]"], true, never>;
8882
+ }
8883
+
8884
+ /**
8885
+ * Responsive grid wrapper for <pecb-hub-card> elements, with an optional
8886
+ * section heading (e.g. "Programs", "Applications").
8887
+ *
8888
+ * Columns adapt automatically to the available container width — no media
8889
+ * queries needed by the consumer: cards wrap once they would shrink below
8890
+ * [minCardWidth], down to a single column on narrow screens.
8891
+ *
8892
+ * @example
8893
+ * <pecb-hub-card-grid sectionTitle="Programs">
8894
+ * <pecb-hub-card title="Skills" description="..." iconSrc="..." />
8895
+ * <pecb-hub-card title="Store" description="..." iconSrc="..." />
8896
+ * </pecb-hub-card-grid>
8897
+ */
8898
+ declare class HubCardGridComponent {
8899
+ /** Optional section heading rendered above the grid */
8900
+ sectionTitle: _angular_core.InputSignal<string>;
8901
+ /** Minimum card width in px before the grid wraps to fewer columns */
8902
+ minCardWidth: _angular_core.InputSignal<number>;
8903
+ /** Gap between cards in px */
8904
+ gap: _angular_core.InputSignal<number>;
8905
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<HubCardGridComponent, never>;
8906
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<HubCardGridComponent, "pecb-hub-card-grid", never, { "sectionTitle": { "alias": "sectionTitle"; "required": false; "isSignal": true; }; "minCardWidth": { "alias": "minCardWidth"; "required": false; "isSignal": true; }; "gap": { "alias": "gap"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
8907
+ }
8908
+
8909
+ /** Priority of a recommended action — drives the pill and default tones. */
8910
+ type ActionItemPriority = 'high' | 'medium' | 'low';
8911
+ /**
8912
+ * "Recommended action" row — a leading icon in a tinted tile, a bold title,
8913
+ * a muted description, a small priority pill (High/Medium/Low mapped to
8914
+ * error/warning/neutral tones) and a trailing CTA button.
8915
+ *
8916
+ * The icon tint, pill tone and CTA variant all derive from [priority] by
8917
+ * default; [ctaVariant] and [priorityLabel] override the derived values
8918
+ * (e.g. for translated labels).
8919
+ *
8920
+ * @example
8921
+ * <pecb-action-item
8922
+ * icon="refresh-01"
8923
+ * title="Renew ISO/IEC 27001 Lead Auditor"
8924
+ * description="Expires in 25 days — start early to avoid a lapse."
8925
+ * priority="high"
8926
+ * ctaLabel="Renew"
8927
+ * (ctaClicked)="renew()"
8928
+ * />
8929
+ */
8930
+ declare class ActionItemComponent {
8931
+ /** Leading icon name (general or custom registry icon); hidden when empty */
8932
+ icon: _angular_core.InputSignal<"" | "embed" | "link" | "progress" | "table" | "circle" | "filter" | "image" | "annotation" | "center" | "drop" | "activity" | "add-square-01" | "add-square-02" | "add-square-03" | "add-square-04" | "alarm-01" | "alarm-02" | "alarm-03" | "alarm-04" | "alarm-05" | "alarm-06" | "alarm-check" | "alarm-minus" | "alarm-off" | "alarm-plus" | "alert-circle" | "alert-square" | "alert-triangle" | "align-center" | "align-down-01" | "align-down-02" | "align-horizontal-center-01" | "align-horizontal-center-02" | "align-horizontal-center-03" | "align-justify" | "align-left" | "align-left-01" | "align-left-02" | "align-right" | "align-right-01" | "align-right-02" | "align-up-01" | "align-up-02" | "align-vertical-center-01" | "align-vertical-center-02" | "align-vertical-center-03" | "annotation-alert" | "annotation-check" | "annotation-information" | "annotation-plus" | "annotation-typing" | "annotation-x" | "atom" | "attatchment-01" | "attatchment-02" | "audio-settings-01" | "audio-settings-02" | "bag-01" | "bag-02" | "bag-03" | "bag-04" | "bag-05" | "bank" | "bank-note-01" | "bank-note-02" | "bank-note-03" | "bank-note-04" | "bank-note-05" | "bank-note-06" | "bar-chart-01" | "bar-chart-02" | "bar-chart-03" | "bar-chart-04" | "bar-chart-05" | "bar-chart-square-01" | "bar-chart-square-02" | "bar-chart-square-03" | "bar-chart-square-down-01" | "bar-chart-square-down-02" | "bar-chart-square-up-01" | "bar-group-01" | "bar-group-02" | "bar-group-03" | "battery-01" | "battery-02" | "battery-03" | "battery-04" | "battery-empty" | "battery-fill-01" | "battery-fill-02" | "battery-fill-04" | "bell-01" | "bell-02" | "bell-03" | "bell-04" | "bell-off-01" | "bell-off-02" | "bell-ringing-01" | "bell-ringing-02" | "bell-ringing-03" | "bell-ringing-04" | "bezier-01" | "bezier-02" | "bluetooth-01" | "bluetooth-02" | "bold-01" | "bold-02" | "book-01" | "book-02" | "book-03" | "book-04" | "book-05" | "book-06" | "box" | "brackets" | "brackets-check" | "brackets-minus" | "brackets-plus" | "brackets-slash" | "brackets-typing" | "calculator-01" | "calculator-02" | "calendar-01" | "calendar-02" | "calendar-03" | "calendar-04" | "calendar-05" | "calendar-06" | "calendar-07" | "calendar-check" | "calendar-minus" | "calendar-number" | "calendar-plus" | "camera-01" | "camera-02" | "camera-lens" | "camera-off" | "cancel-left" | "cancel-right" | "car" | "card-01" | "card-02" | "card-add" | "card-check" | "card-down" | "card-edit" | "card-lock" | "card-minus" | "card-number" | "card-shield" | "card-up" | "card-x" | "cart" | "chart-breakout-circle" | "chart-breakout-square" | "check-01" | "check-02" | "check-broken" | "check-contained" | "check-square-broken" | "check-square-contained" | "chevron-double-down" | "chevron-double-left" | "chevron-double-right" | "chevron-double-up" | "chevron-down" | "chevron-left" | "chevron-right" | "chevron-up" | "chromecast" | "clock-01" | "clock-backward" | "clock-check" | "clock-forward" | "clock-plus" | "cloud-01" | "cloud-02" | "cloud-03" | "cloud-04" | "cloud-lightning" | "cloud-rain" | "cloud-snow" | "cloud-sun" | "code-01" | "code-02" | "code-03" | "code-04" | "coin-broken" | "coin-hand" | "coin-number" | "coin-unbroken" | "coins" | "coins-rotate" | "color-picker" | "color-swatch-01" | "color-swatch-02" | "colors-01" | "colors-02" | "column-horizontal-01" | "column-horizontal-02" | "column-horizontal-03" | "column-vertical-01" | "column-vertical-02" | "column-vertical-03" | "compare" | "compass" | "component" | "computer" | "contrast" | "copy-left" | "copy-right" | "crop-01" | "crop-02" | "currency-bath" | "currency-bitcoin" | "currency-cent" | "currency-coin-bath" | "currency-coin-bitcoin" | "currency-coin-cent" | "currency-coin-dollar" | "currency-coin-euro" | "currency-coin-pound" | "currency-coin-rubel" | "currency-coin-rupee" | "currency-coin-yen" | "currency-dollar" | "currency-euro" | "currency-pound" | "currency-rubel" | "currency-rupee" | "currency-yen" | "cursor-01" | "cursor-02" | "cursor-03" | "cursor-04" | "cursor-05" | "cursor-06" | "cursor-grab" | "cursor-grabbed" | "cursor-pointer" | "dash" | "data-01" | "data-02" | "data-03" | "data-04" | "delete" | "delivery" | "diamond" | "disc" | "discount-circle" | "discount-square" | "discount-star-01" | "discount-star-02" | "discount-star-03" | "divider" | "dot-horizontal" | "dot-vertical" | "download" | "download-01" | "download-02" | "edit-01" | "edit-02" | "edit-03" | "edit-04" | "edit-contained" | "email" | "equals" | "equals-not" | "eraser-01" | "eraser-02" | "expand" | "expand-02" | "eye-closed" | "eye-open" | "face-id-01" | "face-id-02" | "fast-backward" | "fast-forward" | "favourite" | "feather-01" | "feather-02" | "file" | "file-01" | "file-02" | "file-03" | "file-04" | "file-05" | "file-06" | "file-attach-01" | "file-attach-02" | "file-attach-03" | "file-branch" | "file-check-01" | "file-check-02" | "file-code" | "file-down-01" | "file-down-02" | "file-edit-01" | "file-edit-02" | "file-eye-01" | "file-eye-02" | "file-lock-01" | "file-lock-02" | "file-lock-03" | "file-minus-01" | "file-minus-02" | "file-multiple" | "file-none" | "file-plus-01" | "file-plus-02" | "file-question-01" | "file-question-02" | "file-return-01" | "file-return-02" | "file-search-01" | "file-search-02" | "file-shield-01" | "file-shield-02" | "file-shield-03" | "file-shred" | "file-up-01" | "file-up-02" | "file-x-02" | "fingerpint-01" | "fingerpint-02" | "flame-01" | "flash-off" | "flash-on" | "flex-align-bottom-01" | "flex-align-center-01" | "flex-align-left-01" | "flex-align-right-01" | "flex-align-spaced-01" | "flex-align-top-01" | "flex-columns" | "flip-01" | "flip-02" | "flip-left" | "flip-right" | "folder" | "folder-code" | "folder-down-01" | "folder-down-02" | "folder-minus-01" | "folder-open-01" | "folder-open-02" | "folder-open-03" | "folder-plus-01" | "folder-plus-02" | "folder-search-01" | "folder-search-02" | "folder-shield" | "folder-up-01" | "folder-up-02" | "folder-x-01" | "folder-x-02" | "gear" | "gift-01" | "gift-02" | "git-branch-01" | "git-branch-02" | "git-branch-03" | "git-branch-04" | "git-branch-05" | "glasses-01" | "glasses-02" | "globe" | "globe-01" | "globe-02" | "globe-03" | "globe-04" | "globe-05" | "graduation-cap-01" | "graduation-cap-02" | "grid-01" | "grid-02" | "grid-03" | "grid-04-filled" | "hash-01" | "hash-02" | "header-01" | "header-02" | "headphones" | "heart" | "help" | "help-circle-contained" | "help-square-contained" | "hexagon" | "home-01" | "home-02" | "home-03" | "home-04" | "home-05" | "horizontal-chart-01" | "horizontal-chart-02" | "horizontal-chart-03" | "hourglass-01" | "hourglass-02" | "hourglass-03" | "image-01" | "image-02" | "image-03" | "image-04" | "image-add" | "image-avatar" | "image-check" | "image-down" | "image-focus" | "image-indent-left" | "image-indent-right" | "image-minus" | "image-no-borders" | "image-question" | "image-up" | "image-x" | "inbox-01" | "inbox-02" | "indent-decrease" | "indent-increase" | "indent-left" | "indent-right" | "info-square-01-contained" | "info-square-02-contained-filled" | "information-circle-contained" | "intersect" | "iphone-02" | "italics-01" | "italics-02" | "key-01" | "key-02" | "keyboard" | "laptop-01" | "laptop-02" | "layers-01" | "layers-02" | "layers-03" | "layers-04" | "layers-05" | "layout-01" | "layout-02" | "layout-03" | "layout-04" | "layout-bottom" | "layout-grid-01" | "layout-left" | "layout-right" | "layout-scale" | "layout-top" | "letter-spacing-01" | "letter-spacing-02" | "letter-spacing-03" | "lightbulb-01" | "lightbulb-02" | "lightbulb-03" | "lightning-01" | "lightning-02" | "lightning-circle-contained" | "lightning-filled" | "lightning-square-contained" | "line-chart-down-01" | "line-chart-down-02" | "line-chart-up-01" | "line-chart-up-02" | "line-height" | "link-angled" | "link-broken" | "link-external" | "list" | "list-numbers" | "loader-01" | "loader-02" | "lock-01" | "lock-02" | "lock-03" | "lock-04" | "lock-open-01" | "lock-open-02" | "lock-open-03" | "lock-open-04" | "logout-01" | "logout-02" | "logout-03" | "logout-04" | "luggage-01" | "luggage-02" | "luggage-03" | "luggage-04" | "mail-01" | "mail-02" | "mail-03" | "mail-04" | "mail-05" | "map-01" | "map-02" | "map-03" | "map-04" | "marker-01" | "marker-02" | "marker-03" | "marker-04" | "marker-05" | "marker-06" | "maximise-01" | "maximise-02" | "media-strip-01" | "media-strip-02" | "menu-01" | "menu-02" | "menu-03" | "menu-04" | "menu-05" | "message-alert-circle" | "message-alert-plus" | "message-chat-01" | "message-circle" | "message-notify-circle" | "message-notify-square" | "message-square" | "message-square-information" | "message-square-plus" | "message-square-typing" | "message-square-x" | "message-text-01" | "message-text-02" | "message-typing" | "message-x" | "microphone-01" | "microphone-02" | "microphone-off-01" | "microphone-off-02" | "minimise-01" | "minimise-02" | "minus-circle-contained" | "minus-square-contained" | "moon-01" | "moon-02" | "mouse" | "move" | "note-01" | "note-02" | "notification-box" | "notification-bubble" | "notification-square-01" | "notification-square-02" | "octagon" | "overlap" | "package-01" | "package-02" | "package-check" | "package-minus" | "package-plus" | "package-x" | "paint-bucket-01" | "paint-bucket-02" | "palette" | "paperclip" | "paperclip-01" | "paperclip-02" | "passport" | "password-01" | "password-02" | "pause-01" | "pause-02" | "pause-03" | "pen-tool-01" | "pen-tool-02" | "pen-tool-03" | "pen-tool-04" | "pencil-01" | "pencil-02" | "pencil-03" | "pentagon" | "percent-01" | "percent-02" | "percent-03" | "perspective" | "phone" | "phone-call-01" | "phone-call-02" | "phone-down" | "phone-incoming-01" | "phone-incoming-02" | "phone-off" | "phone-outgoing-01" | "phone-outgoing-02" | "phone-up" | "phone-x" | "pie-chart-01" | "pie-chart-02" | "pie-chart-03" | "plane" | "play-01" | "play-02" | "play-03" | "plug-01" | "plus-01" | "plus-02" | "plus-03" | "pointer-01" | "pointer-02" | "power" | "presentation-01" | "presentation-02" | "presentation-03" | "quote" | "receipt" | "receipt-lines" | "refresh-01" | "rss" | "ruler" | "save-01" | "save-02" | "scale-01" | "scale-02" | "scale-03" | "scan" | "scissors-01" | "scissors-02" | "scissors-03" | "scissors-04" | "search-01" | "search-02" | "send-01" | "send-02" | "send-03" | "server-01" | "server-02" | "server-03" | "server-04" | "server-05" | "server-06" | "server-down" | "server-up" | "settings" | "share" | "shield-01" | "shield-02" | "shield-check" | "shield-plus" | "shuffle" | "signal" | "skew" | "skip-back" | "skip-forward" | "slash-01-backward" | "slash-01-forward" | "slash-02-forward" | "smiley-happy" | "smiley-happy-plus" | "smiley-neutral" | "smiley-sad" | "smiley-wink" | "snowflake" | "sort-horizontal" | "sort-vertical-01" | "sort-vertical-02" | "space-height" | "space-horizontal" | "space-vertical" | "space-width" | "speaker" | "square" | "star-01" | "star-02" | "stars" | "stop-01" | "stop-02" | "stopwatch-01" | "stopwatch-02" | "stopwatch-03" | "stopwatch-04" | "stopwatch-05" | "stopwatch-off" | "stopwatch-snooze" | "sun-01" | "sun-02" | "sun-03" | "sun-down" | "sun-up" | "superscript" | "tag" | "target-01" | "target-02" | "target-03" | "target-04" | "temperature-01" | "temperature-02" | "temperature-03" | "temperature-04" | "terminal" | "text-input-01" | "text-input-02" | "thumb-down" | "thumb-up" | "ticket-01" | "ticket-02" | "toggle-right" | "toogle-left" | "train" | "transform" | "trash-01" | "trash-02" | "trash-03" | "trash-04" | "trend-down-01" | "trend-down-02" | "trend-up-01" | "trend-up-02" | "triangle" | "truck" | "tv" | "type-01" | "type-02" | "type-03" | "type-strike-01" | "type-strike-02" | "umbrella" | "umbrella-01" | "umbrella-02" | "underline-01" | "underline-02" | "union" | "upload-01" | "upload-02" | "upload-03" | "upload-04" | "user-profile-01" | "user-profile-02" | "user-profile-03" | "user-profile-add-01" | "user-profile-add-02" | "user-profile-check" | "user-profile-circle" | "user-profile-down" | "user-profile-group" | "user-profile-left" | "user-profile-minus" | "user-profile-right" | "user-profile-square" | "user-profile-star" | "user-profile-up" | "user-profile-x" | "users-profiles-01" | "users-profiles-02" | "users-profiles-03" | "users-profiles-check" | "users-profiles-down" | "users-profiles-left" | "users-profiles-minus" | "users-profiles-plus" | "users-profiles-right" | "users-profiles-up" | "users-profiles-x" | "variant" | "video-off" | "video-on" | "volume-01" | "volume-02" | "volume-03" | "volume-04" | "volume-05" | "volume-06" | "volume-07" | "wallert-04" | "wallet-01" | "wallet-02" | "wallet-03" | "watch-01" | "watch-02" | "waveform" | "webcam" | "wifi-off" | "wifi-on" | "wind-01" | "wind-02" | "wind-03" | "wrench" | "x-01" | "x-02" | "x-03" | "x-circle-contained" | "x-square-contained" | "youtube" | "zoom-in" | "zoom-out" | "custom-warning-xs-neutral" | "custom-add-2xl-active" | "custom-add-2xl-neutral" | "custom-add-lg-active" | "custom-add-lg-neutral" | "custom-add-md-active" | "custom-add-md-neutral" | "custom-add-sm-active" | "custom-add-sm-neutral" | "custom-add-xl-active" | "custom-add-xl-neutral" | "custom-add-xs-active" | "custom-add-xs-neutral" | "custom-amf-note-md-active" | "custom-amf-note-paid-md-active" | "custom-att-acc-md-active" | "custom-att-evaluate-md-active" | "custom-att-na-md-active" | "custom-cert-apply-md-active" | "custom-cert-refused-md-active" | "custom-cert-treatment-md-active" | "custom-cert-view-md-active" | "custom-certificate-2xl-active" | "custom-certificate-2xl-neutral" | "custom-certificate-lg-active" | "custom-certificate-lg-neutral" | "custom-certificate-md-active" | "custom-certificate-md-neutral" | "custom-certificate-sm-active" | "custom-certificate-sm-neutral" | "custom-certificate-xl-active" | "custom-certificate-xl-neutral" | "custom-certificate-xs-active" | "custom-certificate-xs-neutral" | "custom-check-2xl-active" | "custom-check-2xl-neutral" | "custom-check-lg-active" | "custom-check-lg-neutral" | "custom-check-md-active" | "custom-check-md-neutral" | "custom-check-sm-active" | "custom-check-sm-neutral" | "custom-check-xl-active" | "custom-check-xl-neutral" | "custom-check-xs-active" | "custom-check-xs-neutral" | "custom-content-classroom-md-active" | "custom-content-classroom-md-neutral" | "custom-content-elearning-md-active" | "custom-content-elearning-md-neutral" | "custom-content-liveonline-md-active" | "custom-content-liveonline-md-neutral" | "custom-content-selfstudy-md-active" | "custom-content-selfstudy-md-neutral" | "custom-content-technical-md-active" | "custom-content-technical-md-neutral" | "custom-delete-2xl-active" | "custom-delete-2xl-neutral" | "custom-delete-lg-active" | "custom-delete-lg-neutral" | "custom-delete-md-active" | "custom-delete-md-neutral" | "custom-delete-sm-active" | "custom-delete-sm-neutral" | "custom-delete-xl-active" | "custom-delete-xl-neutral" | "custom-delete-xs-active" | "custom-delete-xs-neutral" | "custom-doc-2xl-active" | "custom-doc-2xl-neutral" | "custom-doc-lg-active" | "custom-doc-lg-neutral" | "custom-doc-md-active" | "custom-doc-md-neutral" | "custom-doc-sm-active" | "custom-doc-sm-neutral" | "custom-doc-xl-active" | "custom-doc-xl-neutral" | "custom-doc-xs-active" | "custom-doc-xs-neutral" | "custom-download-2xl-active" | "custom-download-2xl-neutral" | "custom-download-lg-active" | "custom-download-lg-neutral" | "custom-download-md-active" | "custom-download-md-neutral" | "custom-download-sm-active" | "custom-download-sm-neutral" | "custom-download-xl-active" | "custom-download-xl-neutral" | "custom-download-xs-active" | "custom-download-xs-neutral" | "custom-exam-failed-md-active" | "custom-exam-missed-md-active" | "custom-exam-passed-md-active" | "custom-exam-schedule-md-active" | "custom-exam-scheduled-md-active" | "custom-exam-waiting-md-active" | "custom-info-2xl-active" | "custom-info-2xl-neutral" | "custom-info-lg-active" | "custom-info-lg-neutral" | "custom-info-md-active" | "custom-info-md-neutral" | "custom-info-sm-active" | "custom-info-sm-neutral" | "custom-info-xl-active" | "custom-info-xl-neutral" | "custom-info-xs-active" | "custom-info-xs-neutral" | "custom-not-applicable-2xl-active" | "custom-not-applicable-2xl-neutral" | "custom-not-applicable-lg-active" | "custom-not-applicable-lg-neutral" | "custom-not-applicable-md-active" | "custom-not-applicable-md-neutral" | "custom-not-applicable-sm-active" | "custom-not-applicable-sm-neutral" | "custom-not-applicable-xl-active" | "custom-not-applicable-xl-neutral" | "custom-not-applicable-xs-active" | "custom-not-applicable-xs-neutral" | "custom-slide-2xl-active" | "custom-slide-2xl-neutral" | "custom-slide-lg-active" | "custom-slide-lg-neutral" | "custom-slide-md-active" | "custom-slide-md-neutral" | "custom-slide-sm-active" | "custom-slide-sm-neutral" | "custom-slide-xl-active" | "custom-slide-xl-neutral" | "custom-slide-xs-active" | "custom-slide-xs-neutral" | "custom-time-2xl-active" | "custom-time-2xl-neutral" | "custom-time-lg-active" | "custom-time-lg-neutral" | "custom-time-md-active" | "custom-time-md-neutral" | "custom-time-sm-active" | "custom-time-sm-neutral" | "custom-time-xl-active" | "custom-time-xl-neutral" | "custom-time-xs-active" | "custom-time-xs-neutral" | "custom-tools-2xl-active" | "custom-tools-2xl-neutral" | "custom-tools-lg-active" | "custom-tools-lg-neutral" | "custom-tools-md-active" | "custom-tools-md-neutral" | "custom-tools-sm-active" | "custom-tools-sm-neutral" | "custom-tools-xl-active" | "custom-tools-xl-neutral" | "custom-tools-xs-active" | "custom-tools-xs-neutral" | "custom-upload-2xl-active" | "custom-upload-2xl-neutral" | "custom-upload-lg-active" | "custom-upload-lg-neutral" | "custom-upload-md-active" | "custom-upload-md-neutral" | "custom-upload-sm-active" | "custom-upload-sm-neutral" | "custom-upload-xl-active" | "custom-upload-xl-neutral" | "custom-upload-xs-active" | "custom-upload-xs-neutral" | "custom-view-2xl-active" | "custom-view-2xl-neutral" | "custom-view-lg-active" | "custom-view-lg-neutral" | "custom-view-md-active" | "custom-view-md-neutral" | "custom-view-sm-active" | "custom-view-sm-neutral" | "custom-view-xl-active" | "custom-view-xl-neutral" | "custom-view-xs-active" | "custom-view-xs-neutral" | "custom-warning-2xl-active" | "custom-warning-2xl-neutral" | "custom-warning-lg-active" | "custom-warning-lg-neutral" | "custom-warning-md-active" | "custom-warning-md-neutral" | "custom-warning-sm-active" | "custom-warning-sm-neutral" | "custom-warning-xl-active" | "custom-warning-xl-neutral" | "custom-warning-xs-active">;
8933
+ /** Icon tile shape — the design uses a rounded-square tile */
8934
+ iconShape: _angular_core.InputSignal<IconShape>;
8935
+ /** Action title (required) */
8936
+ title: _angular_core.InputSignal<string>;
8937
+ /** Muted description line under the title; hidden when empty */
8938
+ description: _angular_core.InputSignal<string>;
8939
+ /** Priority — drives the pill tone, icon tint and default CTA variant */
8940
+ priority: _angular_core.InputSignal<ActionItemPriority>;
8941
+ /** Pill text override (e.g. a translated label); defaults per priority */
8942
+ priorityLabel: _angular_core.InputSignal<string>;
8943
+ /** Trailing CTA button label; the button is hidden when empty */
8944
+ ctaLabel: _angular_core.InputSignal<string>;
8945
+ /** CTA button variant override; defaults to destructive for high priority, primary-2 otherwise */
8946
+ ctaVariant: _angular_core.InputSignal<"" | ButtonVariant>;
8947
+ /** Emitted when the CTA button is clicked */
8948
+ ctaClicked: _angular_core.OutputEmitterRef<void>;
8949
+ statusType: _angular_core.Signal<"error" | "neutral" | "warning">;
8950
+ iconColor: _angular_core.Signal<IconColor>;
8951
+ priorityText: _angular_core.Signal<string>;
8952
+ ctaVariantValue: _angular_core.Signal<ButtonVariant>;
8953
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ActionItemComponent, never>;
8954
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<ActionItemComponent, "pecb-action-item", never, { "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "iconShape": { "alias": "iconShape"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": true; "isSignal": true; }; "description": { "alias": "description"; "required": false; "isSignal": true; }; "priority": { "alias": "priority"; "required": false; "isSignal": true; }; "priorityLabel": { "alias": "priorityLabel"; "required": false; "isSignal": true; }; "ctaLabel": { "alias": "ctaLabel"; "required": false; "isSignal": true; }; "ctaVariant": { "alias": "ctaVariant"; "required": false; "isSignal": true; }; }, { "ctaClicked": "ctaClicked"; }, never, never, true, never>;
8955
+ }
8956
+
8957
+ /**
8958
+ * Compact list/timeline row — a small round icon, a bold title, a muted
8959
+ * subline and an optional right-aligned meta text (e.g. a timestamp).
8960
+ * Used for feeds like "News releases" and "Recent activity".
8961
+ *
8962
+ * Consecutive rows are divided by a 1px border automatically (the first row
8963
+ * has no divider); place the rows as direct siblings for this to apply.
8964
+ *
8965
+ * Renders as an `<a>` when [href] is set, otherwise as a plain row that
8966
+ * emits (itemClick) when interactive consumers need it.
8967
+ *
8968
+ * @example
8969
+ * <pecb-list-item
8970
+ * icon="bell-01"
8971
+ * title="PECB launches ISO/IEC 42001 Lead Implementer training course"
8972
+ * subtitle="Aug 18, 2026"
8973
+ * href="https://pecb.com/en/news"
8974
+ * target="_blank"
8975
+ * />
8976
+ */
8977
+ declare class ListItemComponent {
8978
+ /** Leading icon name (general or custom registry icon); hidden when empty */
8979
+ icon: _angular_core.InputSignal<"" | "embed" | "link" | "progress" | "table" | "circle" | "filter" | "image" | "annotation" | "center" | "drop" | "activity" | "add-square-01" | "add-square-02" | "add-square-03" | "add-square-04" | "alarm-01" | "alarm-02" | "alarm-03" | "alarm-04" | "alarm-05" | "alarm-06" | "alarm-check" | "alarm-minus" | "alarm-off" | "alarm-plus" | "alert-circle" | "alert-square" | "alert-triangle" | "align-center" | "align-down-01" | "align-down-02" | "align-horizontal-center-01" | "align-horizontal-center-02" | "align-horizontal-center-03" | "align-justify" | "align-left" | "align-left-01" | "align-left-02" | "align-right" | "align-right-01" | "align-right-02" | "align-up-01" | "align-up-02" | "align-vertical-center-01" | "align-vertical-center-02" | "align-vertical-center-03" | "annotation-alert" | "annotation-check" | "annotation-information" | "annotation-plus" | "annotation-typing" | "annotation-x" | "atom" | "attatchment-01" | "attatchment-02" | "audio-settings-01" | "audio-settings-02" | "bag-01" | "bag-02" | "bag-03" | "bag-04" | "bag-05" | "bank" | "bank-note-01" | "bank-note-02" | "bank-note-03" | "bank-note-04" | "bank-note-05" | "bank-note-06" | "bar-chart-01" | "bar-chart-02" | "bar-chart-03" | "bar-chart-04" | "bar-chart-05" | "bar-chart-square-01" | "bar-chart-square-02" | "bar-chart-square-03" | "bar-chart-square-down-01" | "bar-chart-square-down-02" | "bar-chart-square-up-01" | "bar-group-01" | "bar-group-02" | "bar-group-03" | "battery-01" | "battery-02" | "battery-03" | "battery-04" | "battery-empty" | "battery-fill-01" | "battery-fill-02" | "battery-fill-04" | "bell-01" | "bell-02" | "bell-03" | "bell-04" | "bell-off-01" | "bell-off-02" | "bell-ringing-01" | "bell-ringing-02" | "bell-ringing-03" | "bell-ringing-04" | "bezier-01" | "bezier-02" | "bluetooth-01" | "bluetooth-02" | "bold-01" | "bold-02" | "book-01" | "book-02" | "book-03" | "book-04" | "book-05" | "book-06" | "box" | "brackets" | "brackets-check" | "brackets-minus" | "brackets-plus" | "brackets-slash" | "brackets-typing" | "calculator-01" | "calculator-02" | "calendar-01" | "calendar-02" | "calendar-03" | "calendar-04" | "calendar-05" | "calendar-06" | "calendar-07" | "calendar-check" | "calendar-minus" | "calendar-number" | "calendar-plus" | "camera-01" | "camera-02" | "camera-lens" | "camera-off" | "cancel-left" | "cancel-right" | "car" | "card-01" | "card-02" | "card-add" | "card-check" | "card-down" | "card-edit" | "card-lock" | "card-minus" | "card-number" | "card-shield" | "card-up" | "card-x" | "cart" | "chart-breakout-circle" | "chart-breakout-square" | "check-01" | "check-02" | "check-broken" | "check-contained" | "check-square-broken" | "check-square-contained" | "chevron-double-down" | "chevron-double-left" | "chevron-double-right" | "chevron-double-up" | "chevron-down" | "chevron-left" | "chevron-right" | "chevron-up" | "chromecast" | "clock-01" | "clock-backward" | "clock-check" | "clock-forward" | "clock-plus" | "cloud-01" | "cloud-02" | "cloud-03" | "cloud-04" | "cloud-lightning" | "cloud-rain" | "cloud-snow" | "cloud-sun" | "code-01" | "code-02" | "code-03" | "code-04" | "coin-broken" | "coin-hand" | "coin-number" | "coin-unbroken" | "coins" | "coins-rotate" | "color-picker" | "color-swatch-01" | "color-swatch-02" | "colors-01" | "colors-02" | "column-horizontal-01" | "column-horizontal-02" | "column-horizontal-03" | "column-vertical-01" | "column-vertical-02" | "column-vertical-03" | "compare" | "compass" | "component" | "computer" | "contrast" | "copy-left" | "copy-right" | "crop-01" | "crop-02" | "currency-bath" | "currency-bitcoin" | "currency-cent" | "currency-coin-bath" | "currency-coin-bitcoin" | "currency-coin-cent" | "currency-coin-dollar" | "currency-coin-euro" | "currency-coin-pound" | "currency-coin-rubel" | "currency-coin-rupee" | "currency-coin-yen" | "currency-dollar" | "currency-euro" | "currency-pound" | "currency-rubel" | "currency-rupee" | "currency-yen" | "cursor-01" | "cursor-02" | "cursor-03" | "cursor-04" | "cursor-05" | "cursor-06" | "cursor-grab" | "cursor-grabbed" | "cursor-pointer" | "dash" | "data-01" | "data-02" | "data-03" | "data-04" | "delete" | "delivery" | "diamond" | "disc" | "discount-circle" | "discount-square" | "discount-star-01" | "discount-star-02" | "discount-star-03" | "divider" | "dot-horizontal" | "dot-vertical" | "download" | "download-01" | "download-02" | "edit-01" | "edit-02" | "edit-03" | "edit-04" | "edit-contained" | "email" | "equals" | "equals-not" | "eraser-01" | "eraser-02" | "expand" | "expand-02" | "eye-closed" | "eye-open" | "face-id-01" | "face-id-02" | "fast-backward" | "fast-forward" | "favourite" | "feather-01" | "feather-02" | "file" | "file-01" | "file-02" | "file-03" | "file-04" | "file-05" | "file-06" | "file-attach-01" | "file-attach-02" | "file-attach-03" | "file-branch" | "file-check-01" | "file-check-02" | "file-code" | "file-down-01" | "file-down-02" | "file-edit-01" | "file-edit-02" | "file-eye-01" | "file-eye-02" | "file-lock-01" | "file-lock-02" | "file-lock-03" | "file-minus-01" | "file-minus-02" | "file-multiple" | "file-none" | "file-plus-01" | "file-plus-02" | "file-question-01" | "file-question-02" | "file-return-01" | "file-return-02" | "file-search-01" | "file-search-02" | "file-shield-01" | "file-shield-02" | "file-shield-03" | "file-shred" | "file-up-01" | "file-up-02" | "file-x-02" | "fingerpint-01" | "fingerpint-02" | "flame-01" | "flash-off" | "flash-on" | "flex-align-bottom-01" | "flex-align-center-01" | "flex-align-left-01" | "flex-align-right-01" | "flex-align-spaced-01" | "flex-align-top-01" | "flex-columns" | "flip-01" | "flip-02" | "flip-left" | "flip-right" | "folder" | "folder-code" | "folder-down-01" | "folder-down-02" | "folder-minus-01" | "folder-open-01" | "folder-open-02" | "folder-open-03" | "folder-plus-01" | "folder-plus-02" | "folder-search-01" | "folder-search-02" | "folder-shield" | "folder-up-01" | "folder-up-02" | "folder-x-01" | "folder-x-02" | "gear" | "gift-01" | "gift-02" | "git-branch-01" | "git-branch-02" | "git-branch-03" | "git-branch-04" | "git-branch-05" | "glasses-01" | "glasses-02" | "globe" | "globe-01" | "globe-02" | "globe-03" | "globe-04" | "globe-05" | "graduation-cap-01" | "graduation-cap-02" | "grid-01" | "grid-02" | "grid-03" | "grid-04-filled" | "hash-01" | "hash-02" | "header-01" | "header-02" | "headphones" | "heart" | "help" | "help-circle-contained" | "help-square-contained" | "hexagon" | "home-01" | "home-02" | "home-03" | "home-04" | "home-05" | "horizontal-chart-01" | "horizontal-chart-02" | "horizontal-chart-03" | "hourglass-01" | "hourglass-02" | "hourglass-03" | "image-01" | "image-02" | "image-03" | "image-04" | "image-add" | "image-avatar" | "image-check" | "image-down" | "image-focus" | "image-indent-left" | "image-indent-right" | "image-minus" | "image-no-borders" | "image-question" | "image-up" | "image-x" | "inbox-01" | "inbox-02" | "indent-decrease" | "indent-increase" | "indent-left" | "indent-right" | "info-square-01-contained" | "info-square-02-contained-filled" | "information-circle-contained" | "intersect" | "iphone-02" | "italics-01" | "italics-02" | "key-01" | "key-02" | "keyboard" | "laptop-01" | "laptop-02" | "layers-01" | "layers-02" | "layers-03" | "layers-04" | "layers-05" | "layout-01" | "layout-02" | "layout-03" | "layout-04" | "layout-bottom" | "layout-grid-01" | "layout-left" | "layout-right" | "layout-scale" | "layout-top" | "letter-spacing-01" | "letter-spacing-02" | "letter-spacing-03" | "lightbulb-01" | "lightbulb-02" | "lightbulb-03" | "lightning-01" | "lightning-02" | "lightning-circle-contained" | "lightning-filled" | "lightning-square-contained" | "line-chart-down-01" | "line-chart-down-02" | "line-chart-up-01" | "line-chart-up-02" | "line-height" | "link-angled" | "link-broken" | "link-external" | "list" | "list-numbers" | "loader-01" | "loader-02" | "lock-01" | "lock-02" | "lock-03" | "lock-04" | "lock-open-01" | "lock-open-02" | "lock-open-03" | "lock-open-04" | "logout-01" | "logout-02" | "logout-03" | "logout-04" | "luggage-01" | "luggage-02" | "luggage-03" | "luggage-04" | "mail-01" | "mail-02" | "mail-03" | "mail-04" | "mail-05" | "map-01" | "map-02" | "map-03" | "map-04" | "marker-01" | "marker-02" | "marker-03" | "marker-04" | "marker-05" | "marker-06" | "maximise-01" | "maximise-02" | "media-strip-01" | "media-strip-02" | "menu-01" | "menu-02" | "menu-03" | "menu-04" | "menu-05" | "message-alert-circle" | "message-alert-plus" | "message-chat-01" | "message-circle" | "message-notify-circle" | "message-notify-square" | "message-square" | "message-square-information" | "message-square-plus" | "message-square-typing" | "message-square-x" | "message-text-01" | "message-text-02" | "message-typing" | "message-x" | "microphone-01" | "microphone-02" | "microphone-off-01" | "microphone-off-02" | "minimise-01" | "minimise-02" | "minus-circle-contained" | "minus-square-contained" | "moon-01" | "moon-02" | "mouse" | "move" | "note-01" | "note-02" | "notification-box" | "notification-bubble" | "notification-square-01" | "notification-square-02" | "octagon" | "overlap" | "package-01" | "package-02" | "package-check" | "package-minus" | "package-plus" | "package-x" | "paint-bucket-01" | "paint-bucket-02" | "palette" | "paperclip" | "paperclip-01" | "paperclip-02" | "passport" | "password-01" | "password-02" | "pause-01" | "pause-02" | "pause-03" | "pen-tool-01" | "pen-tool-02" | "pen-tool-03" | "pen-tool-04" | "pencil-01" | "pencil-02" | "pencil-03" | "pentagon" | "percent-01" | "percent-02" | "percent-03" | "perspective" | "phone" | "phone-call-01" | "phone-call-02" | "phone-down" | "phone-incoming-01" | "phone-incoming-02" | "phone-off" | "phone-outgoing-01" | "phone-outgoing-02" | "phone-up" | "phone-x" | "pie-chart-01" | "pie-chart-02" | "pie-chart-03" | "plane" | "play-01" | "play-02" | "play-03" | "plug-01" | "plus-01" | "plus-02" | "plus-03" | "pointer-01" | "pointer-02" | "power" | "presentation-01" | "presentation-02" | "presentation-03" | "quote" | "receipt" | "receipt-lines" | "refresh-01" | "rss" | "ruler" | "save-01" | "save-02" | "scale-01" | "scale-02" | "scale-03" | "scan" | "scissors-01" | "scissors-02" | "scissors-03" | "scissors-04" | "search-01" | "search-02" | "send-01" | "send-02" | "send-03" | "server-01" | "server-02" | "server-03" | "server-04" | "server-05" | "server-06" | "server-down" | "server-up" | "settings" | "share" | "shield-01" | "shield-02" | "shield-check" | "shield-plus" | "shuffle" | "signal" | "skew" | "skip-back" | "skip-forward" | "slash-01-backward" | "slash-01-forward" | "slash-02-forward" | "smiley-happy" | "smiley-happy-plus" | "smiley-neutral" | "smiley-sad" | "smiley-wink" | "snowflake" | "sort-horizontal" | "sort-vertical-01" | "sort-vertical-02" | "space-height" | "space-horizontal" | "space-vertical" | "space-width" | "speaker" | "square" | "star-01" | "star-02" | "stars" | "stop-01" | "stop-02" | "stopwatch-01" | "stopwatch-02" | "stopwatch-03" | "stopwatch-04" | "stopwatch-05" | "stopwatch-off" | "stopwatch-snooze" | "sun-01" | "sun-02" | "sun-03" | "sun-down" | "sun-up" | "superscript" | "tag" | "target-01" | "target-02" | "target-03" | "target-04" | "temperature-01" | "temperature-02" | "temperature-03" | "temperature-04" | "terminal" | "text-input-01" | "text-input-02" | "thumb-down" | "thumb-up" | "ticket-01" | "ticket-02" | "toggle-right" | "toogle-left" | "train" | "transform" | "trash-01" | "trash-02" | "trash-03" | "trash-04" | "trend-down-01" | "trend-down-02" | "trend-up-01" | "trend-up-02" | "triangle" | "truck" | "tv" | "type-01" | "type-02" | "type-03" | "type-strike-01" | "type-strike-02" | "umbrella" | "umbrella-01" | "umbrella-02" | "underline-01" | "underline-02" | "union" | "upload-01" | "upload-02" | "upload-03" | "upload-04" | "user-profile-01" | "user-profile-02" | "user-profile-03" | "user-profile-add-01" | "user-profile-add-02" | "user-profile-check" | "user-profile-circle" | "user-profile-down" | "user-profile-group" | "user-profile-left" | "user-profile-minus" | "user-profile-right" | "user-profile-square" | "user-profile-star" | "user-profile-up" | "user-profile-x" | "users-profiles-01" | "users-profiles-02" | "users-profiles-03" | "users-profiles-check" | "users-profiles-down" | "users-profiles-left" | "users-profiles-minus" | "users-profiles-plus" | "users-profiles-right" | "users-profiles-up" | "users-profiles-x" | "variant" | "video-off" | "video-on" | "volume-01" | "volume-02" | "volume-03" | "volume-04" | "volume-05" | "volume-06" | "volume-07" | "wallert-04" | "wallet-01" | "wallet-02" | "wallet-03" | "watch-01" | "watch-02" | "waveform" | "webcam" | "wifi-off" | "wifi-on" | "wind-01" | "wind-02" | "wind-03" | "wrench" | "x-01" | "x-02" | "x-03" | "x-circle-contained" | "x-square-contained" | "youtube" | "zoom-in" | "zoom-out" | "custom-warning-xs-neutral" | "custom-add-2xl-active" | "custom-add-2xl-neutral" | "custom-add-lg-active" | "custom-add-lg-neutral" | "custom-add-md-active" | "custom-add-md-neutral" | "custom-add-sm-active" | "custom-add-sm-neutral" | "custom-add-xl-active" | "custom-add-xl-neutral" | "custom-add-xs-active" | "custom-add-xs-neutral" | "custom-amf-note-md-active" | "custom-amf-note-paid-md-active" | "custom-att-acc-md-active" | "custom-att-evaluate-md-active" | "custom-att-na-md-active" | "custom-cert-apply-md-active" | "custom-cert-refused-md-active" | "custom-cert-treatment-md-active" | "custom-cert-view-md-active" | "custom-certificate-2xl-active" | "custom-certificate-2xl-neutral" | "custom-certificate-lg-active" | "custom-certificate-lg-neutral" | "custom-certificate-md-active" | "custom-certificate-md-neutral" | "custom-certificate-sm-active" | "custom-certificate-sm-neutral" | "custom-certificate-xl-active" | "custom-certificate-xl-neutral" | "custom-certificate-xs-active" | "custom-certificate-xs-neutral" | "custom-check-2xl-active" | "custom-check-2xl-neutral" | "custom-check-lg-active" | "custom-check-lg-neutral" | "custom-check-md-active" | "custom-check-md-neutral" | "custom-check-sm-active" | "custom-check-sm-neutral" | "custom-check-xl-active" | "custom-check-xl-neutral" | "custom-check-xs-active" | "custom-check-xs-neutral" | "custom-content-classroom-md-active" | "custom-content-classroom-md-neutral" | "custom-content-elearning-md-active" | "custom-content-elearning-md-neutral" | "custom-content-liveonline-md-active" | "custom-content-liveonline-md-neutral" | "custom-content-selfstudy-md-active" | "custom-content-selfstudy-md-neutral" | "custom-content-technical-md-active" | "custom-content-technical-md-neutral" | "custom-delete-2xl-active" | "custom-delete-2xl-neutral" | "custom-delete-lg-active" | "custom-delete-lg-neutral" | "custom-delete-md-active" | "custom-delete-md-neutral" | "custom-delete-sm-active" | "custom-delete-sm-neutral" | "custom-delete-xl-active" | "custom-delete-xl-neutral" | "custom-delete-xs-active" | "custom-delete-xs-neutral" | "custom-doc-2xl-active" | "custom-doc-2xl-neutral" | "custom-doc-lg-active" | "custom-doc-lg-neutral" | "custom-doc-md-active" | "custom-doc-md-neutral" | "custom-doc-sm-active" | "custom-doc-sm-neutral" | "custom-doc-xl-active" | "custom-doc-xl-neutral" | "custom-doc-xs-active" | "custom-doc-xs-neutral" | "custom-download-2xl-active" | "custom-download-2xl-neutral" | "custom-download-lg-active" | "custom-download-lg-neutral" | "custom-download-md-active" | "custom-download-md-neutral" | "custom-download-sm-active" | "custom-download-sm-neutral" | "custom-download-xl-active" | "custom-download-xl-neutral" | "custom-download-xs-active" | "custom-download-xs-neutral" | "custom-exam-failed-md-active" | "custom-exam-missed-md-active" | "custom-exam-passed-md-active" | "custom-exam-schedule-md-active" | "custom-exam-scheduled-md-active" | "custom-exam-waiting-md-active" | "custom-info-2xl-active" | "custom-info-2xl-neutral" | "custom-info-lg-active" | "custom-info-lg-neutral" | "custom-info-md-active" | "custom-info-md-neutral" | "custom-info-sm-active" | "custom-info-sm-neutral" | "custom-info-xl-active" | "custom-info-xl-neutral" | "custom-info-xs-active" | "custom-info-xs-neutral" | "custom-not-applicable-2xl-active" | "custom-not-applicable-2xl-neutral" | "custom-not-applicable-lg-active" | "custom-not-applicable-lg-neutral" | "custom-not-applicable-md-active" | "custom-not-applicable-md-neutral" | "custom-not-applicable-sm-active" | "custom-not-applicable-sm-neutral" | "custom-not-applicable-xl-active" | "custom-not-applicable-xl-neutral" | "custom-not-applicable-xs-active" | "custom-not-applicable-xs-neutral" | "custom-slide-2xl-active" | "custom-slide-2xl-neutral" | "custom-slide-lg-active" | "custom-slide-lg-neutral" | "custom-slide-md-active" | "custom-slide-md-neutral" | "custom-slide-sm-active" | "custom-slide-sm-neutral" | "custom-slide-xl-active" | "custom-slide-xl-neutral" | "custom-slide-xs-active" | "custom-slide-xs-neutral" | "custom-time-2xl-active" | "custom-time-2xl-neutral" | "custom-time-lg-active" | "custom-time-lg-neutral" | "custom-time-md-active" | "custom-time-md-neutral" | "custom-time-sm-active" | "custom-time-sm-neutral" | "custom-time-xl-active" | "custom-time-xl-neutral" | "custom-time-xs-active" | "custom-time-xs-neutral" | "custom-tools-2xl-active" | "custom-tools-2xl-neutral" | "custom-tools-lg-active" | "custom-tools-lg-neutral" | "custom-tools-md-active" | "custom-tools-md-neutral" | "custom-tools-sm-active" | "custom-tools-sm-neutral" | "custom-tools-xl-active" | "custom-tools-xl-neutral" | "custom-tools-xs-active" | "custom-tools-xs-neutral" | "custom-upload-2xl-active" | "custom-upload-2xl-neutral" | "custom-upload-lg-active" | "custom-upload-lg-neutral" | "custom-upload-md-active" | "custom-upload-md-neutral" | "custom-upload-sm-active" | "custom-upload-sm-neutral" | "custom-upload-xl-active" | "custom-upload-xl-neutral" | "custom-upload-xs-active" | "custom-upload-xs-neutral" | "custom-view-2xl-active" | "custom-view-2xl-neutral" | "custom-view-lg-active" | "custom-view-lg-neutral" | "custom-view-md-active" | "custom-view-md-neutral" | "custom-view-sm-active" | "custom-view-sm-neutral" | "custom-view-xl-active" | "custom-view-xl-neutral" | "custom-view-xs-active" | "custom-view-xs-neutral" | "custom-warning-2xl-active" | "custom-warning-2xl-neutral" | "custom-warning-lg-active" | "custom-warning-lg-neutral" | "custom-warning-md-active" | "custom-warning-md-neutral" | "custom-warning-sm-active" | "custom-warning-sm-neutral" | "custom-warning-xl-active" | "custom-warning-xl-neutral" | "custom-warning-xs-active">;
8980
+ /** Icon tile color — e.g. 'gray' for activity feeds, 'error' for urgent rows */
8981
+ iconColor: _angular_core.InputSignal<IconColor>;
8982
+ /** Row title (required) */
8983
+ title: _angular_core.InputSignal<string>;
8984
+ /** Muted subline under the title; hidden when empty */
8985
+ subtitle: _angular_core.InputSignal<string>;
8986
+ /** Right-aligned meta text (e.g. "2 days ago"); hidden when empty */
8987
+ meta: _angular_core.InputSignal<string>;
8988
+ /** When set, the row renders as a link */
8989
+ href: _angular_core.InputSignal<string>;
8990
+ /** Link target, e.g. "_blank" — only used together with [href] */
8991
+ target: _angular_core.InputSignal<string>;
8992
+ /** Emitted on click when the row has no [href] */
8993
+ itemClick: _angular_core.OutputEmitterRef<void>;
8994
+ isLink: _angular_core.Signal<boolean>;
8995
+ /** rel="noopener noreferrer" is applied automatically for target="_blank" */
8996
+ rel: _angular_core.Signal<"noopener noreferrer" | null>;
8997
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ListItemComponent, never>;
8998
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<ListItemComponent, "pecb-list-item", never, { "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "iconColor": { "alias": "iconColor"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": true; "isSignal": true; }; "subtitle": { "alias": "subtitle"; "required": false; "isSignal": true; }; "meta": { "alias": "meta"; "required": false; "isSignal": true; }; "href": { "alias": "href"; "required": false; "isSignal": true; }; "target": { "alias": "target"; "required": false; "isSignal": true; }; }, { "itemClick": "itemClick"; }, never, never, true, never>;
8999
+ }
9000
+
9001
+ /**
9002
+ * Course/recommendation tile — a dark icon tile, an uppercase category tag
9003
+ * (brand red), a bold title, a muted meta line (e.g. "5 days · Advanced")
9004
+ * and a CTA link ("View course" with a trailing arrow), with hover elevation.
9005
+ *
9006
+ * The icon can be provided three ways (first match wins):
9007
+ * 1. [icon] — registry icon name (general or custom); black-stroke
9008
+ * registry icons are recolored white inside the dark tile
9009
+ * 2. [iconSrc] — image URL (svg/png)
9010
+ * 3. [iconSvg] — raw SVG string (sanitized internally)
9011
+ * The tile is hidden when none is set.
9012
+ *
9013
+ * Renders as an `<a>` when [href] is set, otherwise as a keyboard-accessible
9014
+ * button-like element that emits (cardClick).
9015
+ *
9016
+ * @example
9017
+ * <pecb-course-tile
9018
+ * icon="graduation-hat-01"
9019
+ * category="AI Management"
9020
+ * title="ISO/IEC 42001 Lead Implementer"
9021
+ * meta="5 days · Advanced"
9022
+ * href="https://pecb.com/en/education-and-certification-for-individuals"
9023
+ * target="_blank"
9024
+ * />
9025
+ */
9026
+ declare class CourseTileComponent {
9027
+ private sanitizer;
9028
+ private registry;
9029
+ /** Registry icon name shown in the dark tile; see also [iconSrc]/[iconSvg] */
9030
+ icon: _angular_core.InputSignal<"" | "embed" | "link" | "progress" | "table" | "circle" | "filter" | "image" | "annotation" | "center" | "drop" | "activity" | "add-square-01" | "add-square-02" | "add-square-03" | "add-square-04" | "alarm-01" | "alarm-02" | "alarm-03" | "alarm-04" | "alarm-05" | "alarm-06" | "alarm-check" | "alarm-minus" | "alarm-off" | "alarm-plus" | "alert-circle" | "alert-square" | "alert-triangle" | "align-center" | "align-down-01" | "align-down-02" | "align-horizontal-center-01" | "align-horizontal-center-02" | "align-horizontal-center-03" | "align-justify" | "align-left" | "align-left-01" | "align-left-02" | "align-right" | "align-right-01" | "align-right-02" | "align-up-01" | "align-up-02" | "align-vertical-center-01" | "align-vertical-center-02" | "align-vertical-center-03" | "annotation-alert" | "annotation-check" | "annotation-information" | "annotation-plus" | "annotation-typing" | "annotation-x" | "atom" | "attatchment-01" | "attatchment-02" | "audio-settings-01" | "audio-settings-02" | "bag-01" | "bag-02" | "bag-03" | "bag-04" | "bag-05" | "bank" | "bank-note-01" | "bank-note-02" | "bank-note-03" | "bank-note-04" | "bank-note-05" | "bank-note-06" | "bar-chart-01" | "bar-chart-02" | "bar-chart-03" | "bar-chart-04" | "bar-chart-05" | "bar-chart-square-01" | "bar-chart-square-02" | "bar-chart-square-03" | "bar-chart-square-down-01" | "bar-chart-square-down-02" | "bar-chart-square-up-01" | "bar-group-01" | "bar-group-02" | "bar-group-03" | "battery-01" | "battery-02" | "battery-03" | "battery-04" | "battery-empty" | "battery-fill-01" | "battery-fill-02" | "battery-fill-04" | "bell-01" | "bell-02" | "bell-03" | "bell-04" | "bell-off-01" | "bell-off-02" | "bell-ringing-01" | "bell-ringing-02" | "bell-ringing-03" | "bell-ringing-04" | "bezier-01" | "bezier-02" | "bluetooth-01" | "bluetooth-02" | "bold-01" | "bold-02" | "book-01" | "book-02" | "book-03" | "book-04" | "book-05" | "book-06" | "box" | "brackets" | "brackets-check" | "brackets-minus" | "brackets-plus" | "brackets-slash" | "brackets-typing" | "calculator-01" | "calculator-02" | "calendar-01" | "calendar-02" | "calendar-03" | "calendar-04" | "calendar-05" | "calendar-06" | "calendar-07" | "calendar-check" | "calendar-minus" | "calendar-number" | "calendar-plus" | "camera-01" | "camera-02" | "camera-lens" | "camera-off" | "cancel-left" | "cancel-right" | "car" | "card-01" | "card-02" | "card-add" | "card-check" | "card-down" | "card-edit" | "card-lock" | "card-minus" | "card-number" | "card-shield" | "card-up" | "card-x" | "cart" | "chart-breakout-circle" | "chart-breakout-square" | "check-01" | "check-02" | "check-broken" | "check-contained" | "check-square-broken" | "check-square-contained" | "chevron-double-down" | "chevron-double-left" | "chevron-double-right" | "chevron-double-up" | "chevron-down" | "chevron-left" | "chevron-right" | "chevron-up" | "chromecast" | "clock-01" | "clock-backward" | "clock-check" | "clock-forward" | "clock-plus" | "cloud-01" | "cloud-02" | "cloud-03" | "cloud-04" | "cloud-lightning" | "cloud-rain" | "cloud-snow" | "cloud-sun" | "code-01" | "code-02" | "code-03" | "code-04" | "coin-broken" | "coin-hand" | "coin-number" | "coin-unbroken" | "coins" | "coins-rotate" | "color-picker" | "color-swatch-01" | "color-swatch-02" | "colors-01" | "colors-02" | "column-horizontal-01" | "column-horizontal-02" | "column-horizontal-03" | "column-vertical-01" | "column-vertical-02" | "column-vertical-03" | "compare" | "compass" | "component" | "computer" | "contrast" | "copy-left" | "copy-right" | "crop-01" | "crop-02" | "currency-bath" | "currency-bitcoin" | "currency-cent" | "currency-coin-bath" | "currency-coin-bitcoin" | "currency-coin-cent" | "currency-coin-dollar" | "currency-coin-euro" | "currency-coin-pound" | "currency-coin-rubel" | "currency-coin-rupee" | "currency-coin-yen" | "currency-dollar" | "currency-euro" | "currency-pound" | "currency-rubel" | "currency-rupee" | "currency-yen" | "cursor-01" | "cursor-02" | "cursor-03" | "cursor-04" | "cursor-05" | "cursor-06" | "cursor-grab" | "cursor-grabbed" | "cursor-pointer" | "dash" | "data-01" | "data-02" | "data-03" | "data-04" | "delete" | "delivery" | "diamond" | "disc" | "discount-circle" | "discount-square" | "discount-star-01" | "discount-star-02" | "discount-star-03" | "divider" | "dot-horizontal" | "dot-vertical" | "download" | "download-01" | "download-02" | "edit-01" | "edit-02" | "edit-03" | "edit-04" | "edit-contained" | "email" | "equals" | "equals-not" | "eraser-01" | "eraser-02" | "expand" | "expand-02" | "eye-closed" | "eye-open" | "face-id-01" | "face-id-02" | "fast-backward" | "fast-forward" | "favourite" | "feather-01" | "feather-02" | "file" | "file-01" | "file-02" | "file-03" | "file-04" | "file-05" | "file-06" | "file-attach-01" | "file-attach-02" | "file-attach-03" | "file-branch" | "file-check-01" | "file-check-02" | "file-code" | "file-down-01" | "file-down-02" | "file-edit-01" | "file-edit-02" | "file-eye-01" | "file-eye-02" | "file-lock-01" | "file-lock-02" | "file-lock-03" | "file-minus-01" | "file-minus-02" | "file-multiple" | "file-none" | "file-plus-01" | "file-plus-02" | "file-question-01" | "file-question-02" | "file-return-01" | "file-return-02" | "file-search-01" | "file-search-02" | "file-shield-01" | "file-shield-02" | "file-shield-03" | "file-shred" | "file-up-01" | "file-up-02" | "file-x-02" | "fingerpint-01" | "fingerpint-02" | "flame-01" | "flash-off" | "flash-on" | "flex-align-bottom-01" | "flex-align-center-01" | "flex-align-left-01" | "flex-align-right-01" | "flex-align-spaced-01" | "flex-align-top-01" | "flex-columns" | "flip-01" | "flip-02" | "flip-left" | "flip-right" | "folder" | "folder-code" | "folder-down-01" | "folder-down-02" | "folder-minus-01" | "folder-open-01" | "folder-open-02" | "folder-open-03" | "folder-plus-01" | "folder-plus-02" | "folder-search-01" | "folder-search-02" | "folder-shield" | "folder-up-01" | "folder-up-02" | "folder-x-01" | "folder-x-02" | "gear" | "gift-01" | "gift-02" | "git-branch-01" | "git-branch-02" | "git-branch-03" | "git-branch-04" | "git-branch-05" | "glasses-01" | "glasses-02" | "globe" | "globe-01" | "globe-02" | "globe-03" | "globe-04" | "globe-05" | "graduation-cap-01" | "graduation-cap-02" | "grid-01" | "grid-02" | "grid-03" | "grid-04-filled" | "hash-01" | "hash-02" | "header-01" | "header-02" | "headphones" | "heart" | "help" | "help-circle-contained" | "help-square-contained" | "hexagon" | "home-01" | "home-02" | "home-03" | "home-04" | "home-05" | "horizontal-chart-01" | "horizontal-chart-02" | "horizontal-chart-03" | "hourglass-01" | "hourglass-02" | "hourglass-03" | "image-01" | "image-02" | "image-03" | "image-04" | "image-add" | "image-avatar" | "image-check" | "image-down" | "image-focus" | "image-indent-left" | "image-indent-right" | "image-minus" | "image-no-borders" | "image-question" | "image-up" | "image-x" | "inbox-01" | "inbox-02" | "indent-decrease" | "indent-increase" | "indent-left" | "indent-right" | "info-square-01-contained" | "info-square-02-contained-filled" | "information-circle-contained" | "intersect" | "iphone-02" | "italics-01" | "italics-02" | "key-01" | "key-02" | "keyboard" | "laptop-01" | "laptop-02" | "layers-01" | "layers-02" | "layers-03" | "layers-04" | "layers-05" | "layout-01" | "layout-02" | "layout-03" | "layout-04" | "layout-bottom" | "layout-grid-01" | "layout-left" | "layout-right" | "layout-scale" | "layout-top" | "letter-spacing-01" | "letter-spacing-02" | "letter-spacing-03" | "lightbulb-01" | "lightbulb-02" | "lightbulb-03" | "lightning-01" | "lightning-02" | "lightning-circle-contained" | "lightning-filled" | "lightning-square-contained" | "line-chart-down-01" | "line-chart-down-02" | "line-chart-up-01" | "line-chart-up-02" | "line-height" | "link-angled" | "link-broken" | "link-external" | "list" | "list-numbers" | "loader-01" | "loader-02" | "lock-01" | "lock-02" | "lock-03" | "lock-04" | "lock-open-01" | "lock-open-02" | "lock-open-03" | "lock-open-04" | "logout-01" | "logout-02" | "logout-03" | "logout-04" | "luggage-01" | "luggage-02" | "luggage-03" | "luggage-04" | "mail-01" | "mail-02" | "mail-03" | "mail-04" | "mail-05" | "map-01" | "map-02" | "map-03" | "map-04" | "marker-01" | "marker-02" | "marker-03" | "marker-04" | "marker-05" | "marker-06" | "maximise-01" | "maximise-02" | "media-strip-01" | "media-strip-02" | "menu-01" | "menu-02" | "menu-03" | "menu-04" | "menu-05" | "message-alert-circle" | "message-alert-plus" | "message-chat-01" | "message-circle" | "message-notify-circle" | "message-notify-square" | "message-square" | "message-square-information" | "message-square-plus" | "message-square-typing" | "message-square-x" | "message-text-01" | "message-text-02" | "message-typing" | "message-x" | "microphone-01" | "microphone-02" | "microphone-off-01" | "microphone-off-02" | "minimise-01" | "minimise-02" | "minus-circle-contained" | "minus-square-contained" | "moon-01" | "moon-02" | "mouse" | "move" | "note-01" | "note-02" | "notification-box" | "notification-bubble" | "notification-square-01" | "notification-square-02" | "octagon" | "overlap" | "package-01" | "package-02" | "package-check" | "package-minus" | "package-plus" | "package-x" | "paint-bucket-01" | "paint-bucket-02" | "palette" | "paperclip" | "paperclip-01" | "paperclip-02" | "passport" | "password-01" | "password-02" | "pause-01" | "pause-02" | "pause-03" | "pen-tool-01" | "pen-tool-02" | "pen-tool-03" | "pen-tool-04" | "pencil-01" | "pencil-02" | "pencil-03" | "pentagon" | "percent-01" | "percent-02" | "percent-03" | "perspective" | "phone" | "phone-call-01" | "phone-call-02" | "phone-down" | "phone-incoming-01" | "phone-incoming-02" | "phone-off" | "phone-outgoing-01" | "phone-outgoing-02" | "phone-up" | "phone-x" | "pie-chart-01" | "pie-chart-02" | "pie-chart-03" | "plane" | "play-01" | "play-02" | "play-03" | "plug-01" | "plus-01" | "plus-02" | "plus-03" | "pointer-01" | "pointer-02" | "power" | "presentation-01" | "presentation-02" | "presentation-03" | "quote" | "receipt" | "receipt-lines" | "refresh-01" | "rss" | "ruler" | "save-01" | "save-02" | "scale-01" | "scale-02" | "scale-03" | "scan" | "scissors-01" | "scissors-02" | "scissors-03" | "scissors-04" | "search-01" | "search-02" | "send-01" | "send-02" | "send-03" | "server-01" | "server-02" | "server-03" | "server-04" | "server-05" | "server-06" | "server-down" | "server-up" | "settings" | "share" | "shield-01" | "shield-02" | "shield-check" | "shield-plus" | "shuffle" | "signal" | "skew" | "skip-back" | "skip-forward" | "slash-01-backward" | "slash-01-forward" | "slash-02-forward" | "smiley-happy" | "smiley-happy-plus" | "smiley-neutral" | "smiley-sad" | "smiley-wink" | "snowflake" | "sort-horizontal" | "sort-vertical-01" | "sort-vertical-02" | "space-height" | "space-horizontal" | "space-vertical" | "space-width" | "speaker" | "square" | "star-01" | "star-02" | "stars" | "stop-01" | "stop-02" | "stopwatch-01" | "stopwatch-02" | "stopwatch-03" | "stopwatch-04" | "stopwatch-05" | "stopwatch-off" | "stopwatch-snooze" | "sun-01" | "sun-02" | "sun-03" | "sun-down" | "sun-up" | "superscript" | "tag" | "target-01" | "target-02" | "target-03" | "target-04" | "temperature-01" | "temperature-02" | "temperature-03" | "temperature-04" | "terminal" | "text-input-01" | "text-input-02" | "thumb-down" | "thumb-up" | "ticket-01" | "ticket-02" | "toggle-right" | "toogle-left" | "train" | "transform" | "trash-01" | "trash-02" | "trash-03" | "trash-04" | "trend-down-01" | "trend-down-02" | "trend-up-01" | "trend-up-02" | "triangle" | "truck" | "tv" | "type-01" | "type-02" | "type-03" | "type-strike-01" | "type-strike-02" | "umbrella" | "umbrella-01" | "umbrella-02" | "underline-01" | "underline-02" | "union" | "upload-01" | "upload-02" | "upload-03" | "upload-04" | "user-profile-01" | "user-profile-02" | "user-profile-03" | "user-profile-add-01" | "user-profile-add-02" | "user-profile-check" | "user-profile-circle" | "user-profile-down" | "user-profile-group" | "user-profile-left" | "user-profile-minus" | "user-profile-right" | "user-profile-square" | "user-profile-star" | "user-profile-up" | "user-profile-x" | "users-profiles-01" | "users-profiles-02" | "users-profiles-03" | "users-profiles-check" | "users-profiles-down" | "users-profiles-left" | "users-profiles-minus" | "users-profiles-plus" | "users-profiles-right" | "users-profiles-up" | "users-profiles-x" | "variant" | "video-off" | "video-on" | "volume-01" | "volume-02" | "volume-03" | "volume-04" | "volume-05" | "volume-06" | "volume-07" | "wallert-04" | "wallet-01" | "wallet-02" | "wallet-03" | "watch-01" | "watch-02" | "waveform" | "webcam" | "wifi-off" | "wifi-on" | "wind-01" | "wind-02" | "wind-03" | "wrench" | "x-01" | "x-02" | "x-03" | "x-circle-contained" | "x-square-contained" | "youtube" | "zoom-in" | "zoom-out" | "custom-warning-xs-neutral" | "custom-add-2xl-active" | "custom-add-2xl-neutral" | "custom-add-lg-active" | "custom-add-lg-neutral" | "custom-add-md-active" | "custom-add-md-neutral" | "custom-add-sm-active" | "custom-add-sm-neutral" | "custom-add-xl-active" | "custom-add-xl-neutral" | "custom-add-xs-active" | "custom-add-xs-neutral" | "custom-amf-note-md-active" | "custom-amf-note-paid-md-active" | "custom-att-acc-md-active" | "custom-att-evaluate-md-active" | "custom-att-na-md-active" | "custom-cert-apply-md-active" | "custom-cert-refused-md-active" | "custom-cert-treatment-md-active" | "custom-cert-view-md-active" | "custom-certificate-2xl-active" | "custom-certificate-2xl-neutral" | "custom-certificate-lg-active" | "custom-certificate-lg-neutral" | "custom-certificate-md-active" | "custom-certificate-md-neutral" | "custom-certificate-sm-active" | "custom-certificate-sm-neutral" | "custom-certificate-xl-active" | "custom-certificate-xl-neutral" | "custom-certificate-xs-active" | "custom-certificate-xs-neutral" | "custom-check-2xl-active" | "custom-check-2xl-neutral" | "custom-check-lg-active" | "custom-check-lg-neutral" | "custom-check-md-active" | "custom-check-md-neutral" | "custom-check-sm-active" | "custom-check-sm-neutral" | "custom-check-xl-active" | "custom-check-xl-neutral" | "custom-check-xs-active" | "custom-check-xs-neutral" | "custom-content-classroom-md-active" | "custom-content-classroom-md-neutral" | "custom-content-elearning-md-active" | "custom-content-elearning-md-neutral" | "custom-content-liveonline-md-active" | "custom-content-liveonline-md-neutral" | "custom-content-selfstudy-md-active" | "custom-content-selfstudy-md-neutral" | "custom-content-technical-md-active" | "custom-content-technical-md-neutral" | "custom-delete-2xl-active" | "custom-delete-2xl-neutral" | "custom-delete-lg-active" | "custom-delete-lg-neutral" | "custom-delete-md-active" | "custom-delete-md-neutral" | "custom-delete-sm-active" | "custom-delete-sm-neutral" | "custom-delete-xl-active" | "custom-delete-xl-neutral" | "custom-delete-xs-active" | "custom-delete-xs-neutral" | "custom-doc-2xl-active" | "custom-doc-2xl-neutral" | "custom-doc-lg-active" | "custom-doc-lg-neutral" | "custom-doc-md-active" | "custom-doc-md-neutral" | "custom-doc-sm-active" | "custom-doc-sm-neutral" | "custom-doc-xl-active" | "custom-doc-xl-neutral" | "custom-doc-xs-active" | "custom-doc-xs-neutral" | "custom-download-2xl-active" | "custom-download-2xl-neutral" | "custom-download-lg-active" | "custom-download-lg-neutral" | "custom-download-md-active" | "custom-download-md-neutral" | "custom-download-sm-active" | "custom-download-sm-neutral" | "custom-download-xl-active" | "custom-download-xl-neutral" | "custom-download-xs-active" | "custom-download-xs-neutral" | "custom-exam-failed-md-active" | "custom-exam-missed-md-active" | "custom-exam-passed-md-active" | "custom-exam-schedule-md-active" | "custom-exam-scheduled-md-active" | "custom-exam-waiting-md-active" | "custom-info-2xl-active" | "custom-info-2xl-neutral" | "custom-info-lg-active" | "custom-info-lg-neutral" | "custom-info-md-active" | "custom-info-md-neutral" | "custom-info-sm-active" | "custom-info-sm-neutral" | "custom-info-xl-active" | "custom-info-xl-neutral" | "custom-info-xs-active" | "custom-info-xs-neutral" | "custom-not-applicable-2xl-active" | "custom-not-applicable-2xl-neutral" | "custom-not-applicable-lg-active" | "custom-not-applicable-lg-neutral" | "custom-not-applicable-md-active" | "custom-not-applicable-md-neutral" | "custom-not-applicable-sm-active" | "custom-not-applicable-sm-neutral" | "custom-not-applicable-xl-active" | "custom-not-applicable-xl-neutral" | "custom-not-applicable-xs-active" | "custom-not-applicable-xs-neutral" | "custom-slide-2xl-active" | "custom-slide-2xl-neutral" | "custom-slide-lg-active" | "custom-slide-lg-neutral" | "custom-slide-md-active" | "custom-slide-md-neutral" | "custom-slide-sm-active" | "custom-slide-sm-neutral" | "custom-slide-xl-active" | "custom-slide-xl-neutral" | "custom-slide-xs-active" | "custom-slide-xs-neutral" | "custom-time-2xl-active" | "custom-time-2xl-neutral" | "custom-time-lg-active" | "custom-time-lg-neutral" | "custom-time-md-active" | "custom-time-md-neutral" | "custom-time-sm-active" | "custom-time-sm-neutral" | "custom-time-xl-active" | "custom-time-xl-neutral" | "custom-time-xs-active" | "custom-time-xs-neutral" | "custom-tools-2xl-active" | "custom-tools-2xl-neutral" | "custom-tools-lg-active" | "custom-tools-lg-neutral" | "custom-tools-md-active" | "custom-tools-md-neutral" | "custom-tools-sm-active" | "custom-tools-sm-neutral" | "custom-tools-xl-active" | "custom-tools-xl-neutral" | "custom-tools-xs-active" | "custom-tools-xs-neutral" | "custom-upload-2xl-active" | "custom-upload-2xl-neutral" | "custom-upload-lg-active" | "custom-upload-lg-neutral" | "custom-upload-md-active" | "custom-upload-md-neutral" | "custom-upload-sm-active" | "custom-upload-sm-neutral" | "custom-upload-xl-active" | "custom-upload-xl-neutral" | "custom-upload-xs-active" | "custom-upload-xs-neutral" | "custom-view-2xl-active" | "custom-view-2xl-neutral" | "custom-view-lg-active" | "custom-view-lg-neutral" | "custom-view-md-active" | "custom-view-md-neutral" | "custom-view-sm-active" | "custom-view-sm-neutral" | "custom-view-xl-active" | "custom-view-xl-neutral" | "custom-view-xs-active" | "custom-view-xs-neutral" | "custom-warning-2xl-active" | "custom-warning-2xl-neutral" | "custom-warning-lg-active" | "custom-warning-lg-neutral" | "custom-warning-md-active" | "custom-warning-md-neutral" | "custom-warning-sm-active" | "custom-warning-sm-neutral" | "custom-warning-xl-active" | "custom-warning-xl-neutral" | "custom-warning-xs-active">;
9031
+ /** Icon image URL — used when [icon] is empty */
9032
+ iconSrc: _angular_core.InputSignal<string>;
9033
+ /** Raw SVG string for the icon — used when [icon] and [iconSrc] are empty */
9034
+ iconSvg: _angular_core.InputSignal<string>;
9035
+ /** Uppercase category tag above the title (e.g. "AI Management"); hidden when empty */
9036
+ category: _angular_core.InputSignal<string>;
9037
+ /** Course title (required) */
9038
+ title: _angular_core.InputSignal<string>;
9039
+ /** Muted meta line (e.g. "5 days · Advanced"); hidden when empty */
9040
+ meta: _angular_core.InputSignal<string>;
9041
+ /** CTA link text at the bottom of the tile */
9042
+ ctaLabel: _angular_core.InputSignal<string>;
9043
+ /** When set, the tile renders as a link */
9044
+ href: _angular_core.InputSignal<string>;
9045
+ /** Link target, e.g. "_blank" — only used together with [href] */
9046
+ target: _angular_core.InputSignal<string>;
9047
+ /** Emitted on click / Enter / Space when the tile has no [href] */
9048
+ cardClick: _angular_core.OutputEmitterRef<void>;
9049
+ isLink: _angular_core.Signal<boolean>;
9050
+ /** rel="noopener noreferrer" is applied automatically for target="_blank" */
9051
+ rel: _angular_core.Signal<"noopener noreferrer" | null>;
9052
+ /** The icon tile renders only when an icon source is provided */
9053
+ hasThumb: _angular_core.Signal<boolean>;
9054
+ safeThumbSvg: _angular_core.Signal<_angular_platform_browser.SafeHtml | null>;
9055
+ onActivate(event: Event): void;
9056
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<CourseTileComponent, never>;
9057
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<CourseTileComponent, "pecb-course-tile", never, { "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "iconSrc": { "alias": "iconSrc"; "required": false; "isSignal": true; }; "iconSvg": { "alias": "iconSvg"; "required": false; "isSignal": true; }; "category": { "alias": "category"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": true; "isSignal": true; }; "meta": { "alias": "meta"; "required": false; "isSignal": true; }; "ctaLabel": { "alias": "ctaLabel"; "required": false; "isSignal": true; }; "href": { "alias": "href"; "required": false; "isSignal": true; }; "target": { "alias": "target"; "required": false; "isSignal": true; }; }, { "cardClick": "cardClick"; }, never, never, true, never>;
9058
+ }
9059
+
9060
+ export { APP_HEADER_TRANSLATIONS, APP_SHELL_LOCALES, APP_SIDEBAR_MENU_ICONS, APP_SIDEBAR_MENU_TRANSLATIONS, APP_SIDEBAR_TRANSLATIONS, AccordionItemComponent, AccordionSmallComponent, ActionItemComponent, AddButtonComponent, AdminHeaderComponent, AdminHeaderFieldTemplateDirective, AffixComponent, AlertComponent, AnchorComponent, AppHeaderComponent, AppSidebarComponent, ApplicationStatusBarComponent, AuditorStatusComponent, AuthorDateTimeComponent, BackToTopComponent, BadgeComponent, BlurDirective, BottomSheetComponent, BreadcrumbsComponent, ButtonComponent, ButtonGroupComponent, ButtonGroupItemComponent, CancelUpdateButtonsComponent, CardBodyComponent, CardComponent, CardFooterComponent, CardHeaderComponent, CertificateUploadBarComponent, CheckDeleteIconComponent, CheckboxComponent, CheckboxDisplayComponent, CodeInputComponent, CodeSnippetComponent, ColorPaletteComponent, ConfirmationComponent, ContentTypeTagComponent, CourseContentPanelComponent, CoursePlayerComponent, CourseTileComponent, CredentialCardComponent, DEFAULT_APP_HEADER_LABELS, DEFAULT_APP_SIDEBAR_LABELS, DEFAULT_APP_SIDEBAR_LANGUAGES, DEFAULT_APP_SIDEBAR_MENU, DEFAULT_APP_SIDEBAR_ROLES, DEFAULT_COURSE_CONTENT_PANEL_LABELS, DEFAULT_LANGUAGES, DEFAULT_VIDEO_PLAYER_LABELS, DEFAULT_VIDEO_PLAYER_RATES, DashboardGridComponent, DatepickerComponent, DividerComponent, DropdownComponent, EMPTY_STATE_MAX_BUTTONS, EditButtonComponent, EditCoverPhotoComponent, EmptyStateComponent, ExpandableRowTableComponent, FileUploadComponent, FilterColumnsComponent, FloatButtonComponent, FloatButtonItemComponent, FormSectionCardComponent, FullscreenModalComponent, FullscreenModalContentDirective, FullscreenModalFooterDirective, FullscreenModalHeaderDirective, GeneralComponent, GridComponent, GridItemComponent, HeaderActionsComponent, HeaderComponent, HeaderDividerComponent, HeaderLanguageComponent, HeaderSearchComponent, HeaderUserComponent, HierarchicalTableComponent, HorizontalStepsComponent, HubCardComponent, HubCardGridComponent, IconComponent, IconRegistry, IconTagComponent, InformationBoxComponent, InputComponent, LanguageDropdownComponent, LinkButtonComponent, ListItemComponent, LoadingService, MediaComponent, MessageBubbleComponent, MessageItemComponent, MetricsCardComponent, MiniIconButtonComponent, NoResultsComponent, NoteSidebarItemComponent, NotesPanelComponent, NotificationService, NotificationStatusLinkComponent, OutlinedFieldComponent, PECB_COLOR_PALETTE, PECB_CUSTOM_ICONS, PECB_FONT_STYLES, PECB_ICONS, PECB_TYPE_SCALE, PaginationComponent, PaymentPlanCardComponent, PaymentScheduleCardComponent, PaymentSummaryComponent, PeriodPaymentModalComponent, PriceMethodComponent, ProfileComponent, ProfileElementsCardComponent, ProfileGroupComponent, ProgressArcComponent, ProgressBarComponent, ProgressCircleComponent, ProjectLayoutComponent, QuantitySelectorComponent, QuestionTypeTagComponent, RadioComponent, RadioDisplayComponent, RatingNumberComponent, ReasonForReturnComponent, RequestSentByComponent, RequestStatusBarComponent, ResultPageComponent, RightModalComponent, RightModalContentDirective, RightModalFooterDirective, RightModalHeaderDirective, ShadowDirective, SidebarComponent, SkeletonComponent, SlidePointsComponent, SpacerComponent, SpinnerComponent, StandardsPdfCardComponent, StatisticsCardComponent, StatusComponent, StepperComponent, TabComponent, TableComponent, TagComponent, TagSelectComponent, TestimonialComponent, TextFormFieldComponent, ThemeService, ToggleComponent, ToolbarBarComponent, TooltipComponent, TooltipDirective, TourComponent, TranscriptLineComponent, TypographyComponent, UserWithEmailComponent, VerifyChecklistComponent, VideoPlayerComponent, VideoUploadBarComponent, VirtualTableComponent, addClass, announceToScreenReader, appHeaderLabels, appSidebarLabels, appSidebarMenu, appSidebarRoles, capitalize, closestElement, copyToClipboard, courseModuleStats, courseProgress, createAuthError, createAuthorizationError, createConfigError, createError, createNetworkError, createValidationError, disableBodyScroll, escapeHtml, findCourseLesson, findCourseModule, formatCount, formatCourseDuration, formatCourseTime, formatErrorForLog, formatErrorMessage, formatVideoTime, generateLinkedIds, generateUniqueId, getAriaCurrent, getButtonAriaAttributes, getComputedStyleValue, getDialogAriaAttributes, getFocusableElements, getInitials, getInputAriaAttributes, getOptionAriaAttributes, getProgressAriaAttributes, getScrollParent, getTabAriaAttributes, getVisuallyHiddenStyles, handleError, hasClass, isBlank, isBrowser, isElementVisible, isNotBlank, isPecbError, isRecoverableError, matchesSelector, parseLessonPartTitle, pluralize, prefersHighContrast, prefersReducedMotion, registerErrorHandler, removeClass, resolveAppShellLocale, resolveLessonStatus, scrollIntoView, slugify, stripHtml, toCamelCase, toKebabCase, toPascalCase, toSnakeCase, toggleClass, trapFocus, truncate, tryAsync, trySync, wrapError };
9061
+ export type { AccordionVariant, ActionItemPriority, AddButtonVariant, AdminHeaderAction, AdminHeaderActionType, AdminHeaderBadgeVariant, AdminHeaderField, AdminHeaderFieldType, AdminHeaderMetadata, AdminHeaderMetadataType, AdminHeaderProfile, AffixPosition, AlertType, AlertVariant, Alignment, AnchorDirection, AnchorItem, AnchorLevel, AnimationTiming, AppHeaderAction, AppHeaderChip, AppHeaderChipTone, AppHeaderLabels, AppHeaderNotification, AppShellLocale, AppShellTranslations, AppSidebarLabels, AppSidebarMenuItem, AppSidebarMenuOption, AppSidebarMenuOptionChange, AppSidebarMenuStrings, AppSidebarNavGroup, AppSidebarNavItem, AppSidebarProduct, AppSidebarRouterLink, AppSidebarUser, AppStatusColor, AriaAttributes, AriaLive, AriaRole, AuditorStatusType, BadgeSize, BadgeStatus, BadgeVariant, BlurSize, BreadcrumbItem, BreadcrumbSeparator, Breakpoint, ButtonGroupIconMode, ButtonGroupItemPosition, ButtonIconStyle, ButtonSize, ButtonVariant, CalendarDay, Callback, CardElevation, CardRadius, CardRole, CheckDeleteType, CheckboxDisplayState, CheckboxLabelPosition, ClosableWithHooks, CodeInputDirection, CodeInputState, CodeSnippetTheme, CodeSnippetVariant, ColorPaletteGroup, ColorPaletteItem, ColorVariant, Colorable, ColumnOption, ComponentSize, ConfirmationIconType, ContentStyle, ContentTagDisplay, ContentTagType, CourseContentPanelAccent, CourseContentPanelDensity, CourseContentPanelLabels, CourseContentPanelLayout, CourseContentPanelTab, CourseLesson, CourseLessonRunView, CourseLessonStatus, CourseLessonType, CourseLessonView, CourseModule, CourseModuleStats, CourseModuleView, CoursePlayerPanelPosition, CourseProgressStats, CourseTimelineRow, CourseTranscriptCue, CourseTranscriptRow, CredentialCardAction, CredentialCardMetaRow, CredentialCardProgress, CredentialCardTone, CustomIconName, DashboardGridGap, DashboardGridLayout, DatepickerSize, Direction, Disableable, DividerType, DropdownOption, DropdownSize, EditButtonVariant, ElevationLevel, EmptyStateButton, EmptyStateIconTheme, ErrorCategory, ErrorHandler, ErrorOptions, ErrorSeverity, EventHandler, ExpandableRowColumn, ExpandableRowPageEvent, ExpandableRowProgressConfig, ExtendedColorVariant, FieldItem, FieldStyle, FileUploadEvent, FileUploadState, FileUploadVariant, FilterColumnsActiveTab, FilterColumnsApplyEvent, FilterField, FilterFieldType, FilterState, FloatButtonAction, FloatButtonPosition, Focusable, FormControlBase, GridAlign, GridColumns, GridGap, GridItemSpan, GridPadding, GridVerticalAlign, HeaderActionButton, HeaderLanguageOption, HeaderSearchCategory, HeaderSearchType, HierarchicalTableAction, HierarchicalTableColumn, HierarchicalTablePageEvent, HubCardSize, IconColor, IconName, IconShape, IconSize, IconTagType, InformationBoxVariant, InputSize, InputType, LanguageDisplayMode, LanguageOption, LinkButtonType, Loadable, LoadingState, MarkedDate, MediaGroup, MediaItem, MediaSize, MediaType, MenuItem, MessageBubbleType, MessageDirection, MessageItemStatus, MetricsCardBadgeStatus, MetricsCardIconBg, MetricsCardOrientation, MetricsCardType, MetricsCardVariation, MiniIconAction, NonNullableProps, NoteGroup, NoteItem, NoteSidebarPosition, NoteSidebarState, Notification, NotificationConfig, NotificationPosition, NotificationStatusType, NotificationType, OptionalProps, Orientation, OverlayComponent, PageChangeEvent, PaginationSize, PaginationState, PaginationVariant, PaymentScheduleCardAction, PaymentScheduleCardMeta, PaymentScheduleCardPeriod, PaymentScheduleCardTone, PaymentSummaryRow, PdfCardVariant, PecbError, PecbTableColumn, PecbTableColumnComponent, PecbTableColumnType, PeriodPaymentModalPeriod, Position, ProfileBadge, ProfileGroupItem, ProfileGroupSize, ProfileIndicator, ProfileSize, ProfileType, ProgressArcSize, ProgressBarSize, ProgressCircleSize, ProgressType, QuestionTagDisplay, QuestionTagType, QuizType, RadioDisplayState, RadioLabelPosition, RadioVariant, RadiusScale, RatingStyle, RequestStatusIconType, RequireProps, ResultPageAction, ResultPageIcon, RibbonColor, RightModalSize, SearchMode, SelectableItem, ShadowHardSize, ShadowSize, ShadowSoftSize, ShadowType, SidebarMenuItem, SidebarSection, Size, Sizeable, SkeletonShape, SkeletonSize, SkeletonType, SortState, SpacerSize, SpacingScale, StateVariant, StatisticsIconColor, StatusColor, StatusSize, StatusType, StatusVariant, StepItem, StepOrder, StepState, StepperDirection, StepperSize, StepperTailStyle, StepperType, TabItem, TabSize, TabStyle, TableAction, TableColumn, TableRowActionEvent, TableSelectionEvent, TableSize, TableSortEvent, TableStatusConfig, TableUserConfig, TableVariant, TagAction, TagSelectOption, TagStyle, Templatable, TestimonialData, TestimonialVariant, TextFormFieldType, ThemeConfig, ThemeMode, ThemeVariables, ToggleLabelPosition, ToggleSize, ToolbarButton, ToolbarTab, ToolbarVariant, TooltipPointerPosition, TooltipTheme, TourIndicatorType, TourPlacement, TourStep, TourType, TranscriptLineState, TreeNode, TypographyScaleEntry, TypographyStyleEntry, UploadedFile, Validatable, ValidationError, ValidationState, VerifyChecklistItem, VerifyItemStatus, VideoPlayerError, VideoPlayerLabels, VideoPlayerPreload, VideoPlayerSource, VideoPlayerTimeEvent, VideoPlayerTrack, VirtualTableColumn, VirtualTablePageEvent, VirtualTableProgressConfig };