@bsginstitute/bsg-integra 0.0.3 → 0.0.5

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
@@ -1,5 +1,5 @@
1
1
  import * as _angular_core from '@angular/core';
2
- import { OnInit, ElementRef, AfterContentInit, ChangeDetectorRef, AfterViewInit, OnDestroy } from '@angular/core';
2
+ import { OnInit, ElementRef, AfterContentInit, ChangeDetectorRef, AfterViewInit, OnDestroy, TemplateRef, EventEmitter } from '@angular/core';
3
3
  import { VariantProps } from 'class-variance-authority';
4
4
  import * as class_variance_authority_types from 'class-variance-authority/types';
5
5
  import { DomSanitizer, SafeHtml } from '@angular/platform-browser';
@@ -313,92 +313,53 @@ type BadgeVariantsProps = VariantProps<typeof badgeVariants>;
313
313
  declare const badgeIconVariants: (props?: class_variance_authority_types.ClassProp | undefined) => string;
314
314
  type BadgeIconVariantsProps = VariantProps<typeof badgeIconVariants>;
315
315
 
316
- /**
317
- * Button variants
318
- *
319
- * Controls the button styles including size, variant, shape, and state
320
- */
321
316
  declare const buttonVariants: (props?: ({
322
317
  size?: "sm" | "md" | "lg" | null | undefined;
323
318
  variant?: "default" | "destructive" | "secondary" | "outline" | "ghost" | "link" | null | undefined;
324
319
  shape?: "rectangular" | "pill" | "icon" | "icon-text" | "icon-only" | null | undefined;
325
320
  disabled?: boolean | null | undefined;
326
321
  } & class_variance_authority_types.ClassProp) | undefined) => string;
327
- /**
328
- * Button icon variants
329
- *
330
- * Controls the icon styling within buttons
331
- */
332
322
  declare const buttonIconVariants: (props?: ({
333
323
  position?: "left" | "right" | "center" | null | undefined;
334
324
  } & class_variance_authority_types.ClassProp) | undefined) => string;
335
- /**
336
- * Button label variants
337
- *
338
- * Controls the label text styling
339
- */
340
325
  declare const buttonLabelVariants: (props?: class_variance_authority_types.ClassProp | undefined) => string;
341
- /**
342
- * Button icon-only wrapper variants
343
- *
344
- * Controls the icon wrapper for icon-only buttons
345
- */
346
326
  declare const buttonIconOnlyVariants: (props?: ({
347
327
  size?: "sm" | "md" | "lg" | null | undefined;
348
328
  } & class_variance_authority_types.ClassProp) | undefined) => string;
329
+ /** ✅ nuevo: spinner overlay centrado */
330
+ declare const buttonSpinnerVariants: (props?: ({
331
+ shape?: "rectangular" | "pill" | "icon" | "icon-text" | "icon-only" | null | undefined;
332
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
349
333
 
350
334
  type ButtonSize = 'sm' | 'md' | 'lg';
351
335
  type ButtonVariant = 'default' | 'secondary' | 'outline' | 'ghost' | 'link' | 'destructive';
352
336
  type ButtonShape = 'rectangular' | 'pill' | 'icon' | 'icon-text' | 'icon-only';
353
- type IconName = 'check' | 'chevron-left' | 'chevron-right' | 'chevron-up' | 'chevron-down' | 'none';
354
337
  type ButtonVariantsProps = VariantProps<typeof buttonVariants>;
355
- /**
356
- * Button Component - Interactive button with multiple variants
357
- *
358
- * Following shadcn/ui pattern:
359
- * ```html
360
- * <bsg-button
361
- * [variant]="'default'"
362
- * [size]="'md'"
363
- * [shape]="'rectangular'"
364
- * [label]="'Click me'"
365
- * (Click)="onClick()"
366
- * />
367
- * ```
368
- */
369
338
  declare class ButtonComponent {
370
- private sanitizer;
371
- constructor(sanitizer: DomSanitizer);
372
- /** Size of the button */
373
339
  readonly size: _angular_core.InputSignal<ButtonSize>;
374
- /** Visual variant of the button */
375
340
  readonly variant: _angular_core.InputSignal<ButtonVariant>;
376
- /** Shape of the button */
377
341
  readonly shape: _angular_core.InputSignal<ButtonShape>;
378
- /** Button label text */
379
342
  readonly label: _angular_core.InputSignal<string>;
380
- /** Show icon */
381
- readonly icon: _angular_core.InputSignal<boolean>;
382
- /** Icon position (left or right) */
383
- readonly iconPosition: _angular_core.InputSignal<"left" | "right">;
384
- /** Icon name for icon-only buttons */
385
- readonly iconName: _angular_core.InputSignal<IconName>;
386
- /** Disabled state */
387
343
  readonly disabled: _angular_core.InputSignal<boolean>;
388
- /** Additional CSS classes */
344
+ /** nuevo: muestra spinner y bloquea click */
345
+ readonly spinner: _angular_core.InputSignal<boolean>;
346
+ /** Accesibilidad para icon buttons */
347
+ readonly ariaLabel: _angular_core.InputSignal<string | null>;
389
348
  readonly className: _angular_core.InputSignal<string | undefined>;
390
- /** Click event emitter */
391
349
  readonly Click: _angular_core.OutputEmitterRef<Event>;
392
350
  readonly isDisabled: _angular_core.Signal<boolean>;
351
+ readonly isIconButton: _angular_core.Signal<boolean>;
352
+ readonly buttonSquarePx: _angular_core.Signal<27 | 43 | 35>;
353
+ readonly iconFontPx: _angular_core.Signal<15 | 22 | 18>;
354
+ readonly spinnerPx: _angular_core.Signal<14 | 20 | 16>;
393
355
  readonly buttonClasses: _angular_core.Signal<string>;
394
- iconClasses(position: 'left' | 'right' | 'center'): string;
395
356
  readonly labelClasses: _angular_core.Signal<string>;
396
357
  readonly iconOnlyClasses: _angular_core.Signal<string>;
397
- readonly iconColor: _angular_core.Signal<"#2563EB" | "#7C3AED" | "#1E293B" | "white">;
398
- getIconSvg(iconName: string): SafeHtml;
358
+ readonly spinnerClasses: _angular_core.Signal<string>;
359
+ iconClasses(position: 'left' | 'right' | 'center'): string;
399
360
  handleClick(event: Event): void;
400
361
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<ButtonComponent, never>;
401
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ButtonComponent, "bsg-button", never, { "size": { "alias": "size"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "shape": { "alias": "shape"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "iconPosition": { "alias": "iconPosition"; "required": false; "isSignal": true; }; "iconName": { "alias": "iconName"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "className": { "alias": "className"; "required": false; "isSignal": true; }; }, { "Click": "Click"; }, never, never, true, never>;
362
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<ButtonComponent, "bsg-button", never, { "size": { "alias": "size"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "shape": { "alias": "shape"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "spinner": { "alias": "spinner"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "className": { "alias": "className"; "required": false; "isSignal": true; }; }, { "Click": "Click"; }, never, ["*", "[left-icon]", "[right-icon]"], true, never>;
402
363
  }
403
364
 
404
365
  /**
@@ -1135,7 +1096,7 @@ declare class RadioComponent {
1135
1096
  readonly focusRingClasses: _angular_core.Signal<string>;
1136
1097
  readonly outerClasses: _angular_core.Signal<string>;
1137
1098
  readonly innerClasses: _angular_core.Signal<string>;
1138
- readonly outerSize: _angular_core.Signal<16 | 20>;
1099
+ readonly outerSize: _angular_core.Signal<20 | 16>;
1139
1100
  readonly innerSize: _angular_core.Signal<14 | 10>;
1140
1101
  readonly focusRingSize: _angular_core.Signal<26 | 22>;
1141
1102
  readonly outerCircleClasses: _angular_core.Signal<"stroke-muted-foreground fill-muted-foreground" | "stroke-primary/70 fill-none" | "stroke-primary fill-none" | "stroke-muted-foreground fill-none">;
@@ -1475,7 +1436,7 @@ declare const sidebarProviderVariants: (props?: class_variance_authority_types.C
1475
1436
  * Sidebar container variants (following shadcn pattern)
1476
1437
  */
1477
1438
  declare const sidebarVariants: (props?: ({
1478
- collapsible?: "icon" | "none" | "offcanvas" | null | undefined;
1439
+ collapsible?: "icon" | "offcanvas" | "none" | null | undefined;
1479
1440
  side?: "left" | "right" | null | undefined;
1480
1441
  variant?: "sidebar" | "floating" | "inset" | null | undefined;
1481
1442
  } & class_variance_authority_types.ClassProp) | undefined) => string;
@@ -2151,6 +2112,56 @@ declare class SkeletonComponent {
2151
2112
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<SkeletonComponent, "bsg-skeleton", never, { "type": { "alias": "type"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; "className": { "alias": "className"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
2152
2113
  }
2153
2114
 
2115
+ /**
2116
+ * Spinner variants
2117
+ *
2118
+ * Controls the spinner appearance including size and color variants.
2119
+ * Based on shadcn/ui spinner pattern.
2120
+ */
2121
+ declare const spinnerVariants: (props?: ({
2122
+ size?: "xs" | "sm" | "md" | "lg" | "xl" | null | undefined;
2123
+ variant?: "default" | "info" | "success" | "warning" | "destructive" | "secondary" | "brand" | "primary" | "muted" | null | undefined;
2124
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
2125
+
2126
+ type SpinnerSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl';
2127
+ type SpinnerVariant = 'default' | 'primary' | 'secondary' | 'muted' | 'destructive' | 'success' | 'warning' | 'info' | 'brand';
2128
+ type SpinnerVariantsProps = VariantProps<typeof spinnerVariants>;
2129
+ /**
2130
+ * Spinner Component
2131
+ *
2132
+ * A loading indicator that shows a spinning animation.
2133
+ * Based on shadcn/ui spinner pattern using an SVG loader icon.
2134
+ *
2135
+ * @example
2136
+ * ```html
2137
+ * <!-- Basic usage -->
2138
+ * <bsg-spinner />
2139
+ *
2140
+ * <!-- With size -->
2141
+ * <bsg-spinner size="lg" />
2142
+ *
2143
+ * <!-- With variant (color) -->
2144
+ * <bsg-spinner variant="destructive" />
2145
+ *
2146
+ * <!-- Custom aria-label -->
2147
+ * <bsg-spinner ariaLabel="Processing request..." />
2148
+ * ```
2149
+ */
2150
+ declare class SpinnerComponent {
2151
+ /** Spinner size */
2152
+ readonly size: _angular_core.InputSignal<SpinnerSize>;
2153
+ /** Spinner color variant */
2154
+ readonly variant: _angular_core.InputSignal<SpinnerVariant>;
2155
+ /** Accessibility label for screen readers */
2156
+ readonly ariaLabel: _angular_core.InputSignal<string>;
2157
+ /** Additional CSS classes */
2158
+ readonly className: _angular_core.InputSignal<string | undefined>;
2159
+ /** Computed spinner classes */
2160
+ readonly spinnerClasses: _angular_core.Signal<string>;
2161
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SpinnerComponent, never>;
2162
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SpinnerComponent, "bsg-spinner", never, { "size": { "alias": "size"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "className": { "alias": "className"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
2163
+ }
2164
+
2154
2165
  /**
2155
2166
  * Switch root variants
2156
2167
  *
@@ -2208,9 +2219,761 @@ declare class SwitchComponent {
2208
2219
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<SwitchComponent, "bsg-switch", never, { "checked": { "alias": "checked"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "className": { "alias": "className"; "required": false; "isSignal": true; }; }, { "checked": "checkedChange"; "checkedChange": "checkedChange"; }, never, never, true, never>;
2209
2220
  }
2210
2221
 
2222
+ /**
2223
+ * Tabs Root Component
2224
+ *
2225
+ * The root container for a set of tabs. Manages the active tab state.
2226
+ *
2227
+ * Usage:
2228
+ * ```html
2229
+ * <bsg-tabs [defaultValue]="0" (valueChange)="onTabChange($event)">
2230
+ * <bsg-tabs-list>
2231
+ * <bsg-tabs-trigger [value]="0">Tab 1</bsg-tabs-trigger>
2232
+ * <bsg-tabs-trigger [value]="1">Tab 2</bsg-tabs-trigger>
2233
+ * </bsg-tabs-list>
2234
+ * <bsg-tabs-content [value]="0">Content 1</bsg-tabs-content>
2235
+ * <bsg-tabs-content [value]="1">Content 2</bsg-tabs-content>
2236
+ * </bsg-tabs>
2237
+ * ```
2238
+ */
2239
+ declare class TabsComponent {
2240
+ /** Default active tab value */
2241
+ readonly defaultValue: _angular_core.InputSignal<string | number>;
2242
+ /** Additional CSS classes */
2243
+ readonly className: _angular_core.InputSignal<string | undefined>;
2244
+ /** Controlled value (if you want to control the tab from outside) */
2245
+ readonly value: _angular_core.InputSignal<string | number | null>;
2246
+ /** Event emitted when tab changes */
2247
+ readonly valueChange: _angular_core.OutputEmitterRef<string | number>;
2248
+ private readonly _internalValue;
2249
+ readonly activeValue: _angular_core.Signal<string | number>;
2250
+ readonly computedClasses: _angular_core.Signal<string>;
2251
+ /**
2252
+ * Set the active tab value
2253
+ */
2254
+ setValue(value: number | string): void;
2255
+ /**
2256
+ * Get the current active tab value
2257
+ */
2258
+ getValue(): number | string;
2259
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<TabsComponent, never>;
2260
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<TabsComponent, "bsg-tabs", never, { "defaultValue": { "alias": "defaultValue"; "required": false; "isSignal": true; }; "className": { "alias": "className"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "valueChange": "valueChange"; }, never, ["*"], true, never>;
2261
+ }
2262
+
2263
+ type TabSize = 'sm' | 'md' | 'lg';
2264
+ type TabVariant = 'text' | 'icon-text';
2265
+ type TabLayout = 'default' | 'carousel';
2266
+ type TabColor = 'default' | 'info' | 'success' | 'warning' | 'destructive';
2267
+ /**
2268
+ * Tab Navigation container variants
2269
+ *
2270
+ * Controls the overall tab navigation container layout
2271
+ */
2272
+ declare const tabNavigationVariants: (props?: ({
2273
+ layout?: "default" | "carousel" | null | undefined;
2274
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
2275
+ /**
2276
+ * Tab Item variants
2277
+ *
2278
+ * Controls the individual tab button styles with size, variant, and color combinations
2279
+ */
2280
+ declare const tabItemVariants: (props?: ({
2281
+ variant?: "text" | "icon-text" | null | undefined;
2282
+ size?: "sm" | "md" | "lg" | null | undefined;
2283
+ color?: "default" | "info" | "success" | "warning" | "destructive" | null | undefined;
2284
+ disabled?: boolean | null | undefined;
2285
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
2286
+ /**
2287
+ * Tab Icon Circle variants
2288
+ *
2289
+ * Controls the circular icon container in icon-text variant
2290
+ */
2291
+ declare const tabIconCircleVariants: (props?: ({
2292
+ color?: "default" | "info" | "success" | "warning" | "destructive" | null | undefined;
2293
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
2294
+ /**
2295
+ * Tab Icon Content variants
2296
+ *
2297
+ * Controls the icon + label container layout
2298
+ */
2299
+ declare const tabIconContentVariants: (props?: class_variance_authority_types.ClassProp | undefined) => string;
2300
+ /**
2301
+ * Tab Label variants
2302
+ *
2303
+ * Controls the label text in icon-text variant
2304
+ */
2305
+ declare const tabLabelVariants: (props?: class_variance_authority_types.ClassProp | undefined) => string;
2306
+ /**
2307
+ * Tab Text Content variants
2308
+ *
2309
+ * Controls the text content in text variant
2310
+ */
2311
+ declare const tabTextContentVariants: (props?: class_variance_authority_types.ClassProp | undefined) => string;
2312
+
2313
+ /**
2314
+ * Tabs List Component
2315
+ *
2316
+ * Container for tab triggers. This is where you place your bsg-tabs-trigger components.
2317
+ *
2318
+ * Usage:
2319
+ * ```html
2320
+ * <bsg-tabs-list>
2321
+ * <bsg-tabs-trigger [value]="0">Tab 1</bsg-tabs-trigger>
2322
+ * <bsg-tabs-trigger [value]="1">Tab 2</bsg-tabs-trigger>
2323
+ * </bsg-tabs-list>
2324
+ * ```
2325
+ *
2326
+ * Carousel layout with navigation buttons:
2327
+ * ```html
2328
+ * <bsg-tabs-list layout="carousel">
2329
+ * <bsg-tabs-trigger [value]="0">Tab 1</bsg-tabs-trigger>
2330
+ * <bsg-tabs-trigger [value]="1">Tab 2</bsg-tabs-trigger>
2331
+ * <!-- Many more tabs... -->
2332
+ * </bsg-tabs-list>
2333
+ * ```
2334
+ */
2335
+ declare class TabsListComponent implements AfterViewInit, OnDestroy {
2336
+ /** Layout mode: default (wraps) or carousel (scrolls horizontally) */
2337
+ readonly layout: _angular_core.InputSignal<TabLayout>;
2338
+ /** Additional CSS classes */
2339
+ readonly className: _angular_core.InputSignal<string | undefined>;
2340
+ readonly scrollContainer: _angular_core.Signal<ElementRef<HTMLDivElement> | undefined>;
2341
+ readonly canScrollLeft: _angular_core.WritableSignal<boolean>;
2342
+ readonly canScrollRight: _angular_core.WritableSignal<boolean>;
2343
+ private resizeObserver;
2344
+ constructor();
2345
+ ngAfterViewInit(): void;
2346
+ ngOnDestroy(): void;
2347
+ private setupResizeObserver;
2348
+ readonly isCarousel: _angular_core.Signal<boolean>;
2349
+ readonly containerClasses: _angular_core.Signal<string>;
2350
+ readonly computedClasses: _angular_core.Signal<string>;
2351
+ scrollLeft(): void;
2352
+ scrollRight(): void;
2353
+ onScroll(): void;
2354
+ private updateScrollButtons;
2355
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<TabsListComponent, never>;
2356
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<TabsListComponent, "bsg-tabs-list", never, { "layout": { "alias": "layout"; "required": false; "isSignal": true; }; "className": { "alias": "className"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
2357
+ }
2358
+
2359
+ type TabsTriggerVariantsProps = VariantProps<typeof tabItemVariants>;
2360
+ /**
2361
+ * Tabs Trigger Component
2362
+ *
2363
+ * A clickable tab that activates its associated content panel.
2364
+ *
2365
+ * Usage for text variant:
2366
+ * ```html
2367
+ * <bsg-tabs-trigger [value]="0">
2368
+ * Tab Label
2369
+ * </bsg-tabs-trigger>
2370
+ * ```
2371
+ *
2372
+ * Usage for icon-text variant:
2373
+ * ```html
2374
+ * <bsg-tabs-trigger [value]="0" variant="icon-text">
2375
+ * <svg slot="icon">...</svg>
2376
+ * <span slot="label">Tab Label</span>
2377
+ * </bsg-tabs-trigger>
2378
+ * ```
2379
+ */
2380
+ declare class TabsTriggerComponent {
2381
+ private readonly tabs;
2382
+ /** The value that identifies this tab */
2383
+ readonly value: _angular_core.InputSignal<string | number>;
2384
+ /** Tab visual variant */
2385
+ readonly variant: _angular_core.InputSignal<TabVariant>;
2386
+ /** Tab size variant */
2387
+ readonly size: _angular_core.InputSignal<TabSize>;
2388
+ /** Tab color scheme */
2389
+ readonly color: _angular_core.InputSignal<TabColor>;
2390
+ /** Whether the tab is disabled */
2391
+ readonly disabled: _angular_core.InputSignal<boolean>;
2392
+ /** Additional CSS classes */
2393
+ readonly className: _angular_core.InputSignal<string | undefined>;
2394
+ readonly isActive: _angular_core.Signal<boolean>;
2395
+ readonly computedClasses: _angular_core.Signal<string>;
2396
+ readonly iconContentClasses: _angular_core.Signal<string>;
2397
+ readonly iconCircleClasses: _angular_core.Signal<string>;
2398
+ readonly labelClasses: _angular_core.Signal<string>;
2399
+ readonly textContentClasses: _angular_core.Signal<string>;
2400
+ handleClick(): void;
2401
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<TabsTriggerComponent, never>;
2402
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<TabsTriggerComponent, "bsg-tabs-trigger", never, { "value": { "alias": "value"; "required": true; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "className": { "alias": "className"; "required": false; "isSignal": true; }; }, {}, never, ["[slot='icon']", "[slot='label']", "*"], true, never>;
2403
+ }
2404
+
2405
+ /**
2406
+ * Tabs Content Component
2407
+ *
2408
+ * A container for tab panel content. Only displays when its value matches the active tab.
2409
+ *
2410
+ * Usage:
2411
+ * ```html
2412
+ * <bsg-tabs-content [value]="0">
2413
+ * <p>Content for tab 0</p>
2414
+ * </bsg-tabs-content>
2415
+ * ```
2416
+ */
2417
+ declare class TabsContentComponent {
2418
+ private readonly tabs;
2419
+ /** The value that identifies which tab this content belongs to */
2420
+ readonly value: _angular_core.InputSignal<string | number>;
2421
+ /** Additional CSS classes */
2422
+ readonly className: _angular_core.InputSignal<string | undefined>;
2423
+ readonly isActive: _angular_core.Signal<boolean>;
2424
+ readonly computedClasses: _angular_core.Signal<string>;
2425
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<TabsContentComponent, never>;
2426
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<TabsContentComponent, "bsg-tabs-content", never, { "value": { "alias": "value"; "required": true; "isSignal": true; }; "className": { "alias": "className"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
2427
+ }
2428
+
2429
+ /**
2430
+ * Directive to mark content that should be projected into a specific tab panel
2431
+ *
2432
+ * Usage:
2433
+ * ```html
2434
+ * <bsg-tab-navigation [tabs]="tabs">
2435
+ * <ng-template bsgTabContent>Content for tab 0</ng-template>
2436
+ * <ng-template bsgTabContent>Content for tab 1</ng-template>
2437
+ * </bsg-tab-navigation>
2438
+ * ```
2439
+ */
2440
+ declare class TabContentDirective {
2441
+ template: TemplateRef<unknown>;
2442
+ constructor(template: TemplateRef<unknown>);
2443
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<TabContentDirective, never>;
2444
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<TabContentDirective, "[bsgTabContent]", never, {}, {}, never, never, true, never>;
2445
+ }
2446
+ interface TabItem {
2447
+ label: string;
2448
+ count?: number;
2449
+ icon?: boolean;
2450
+ }
2451
+ type TabItemVariantsProps = VariantProps<typeof tabItemVariants>;
2452
+ /**
2453
+ * Tab Navigation Component
2454
+ *
2455
+ * A tabbed navigation component with support for text and icon-text variants.
2456
+ * Follows the shadcn/ui tabs pattern with separated TabsList and TabsContent.
2457
+ *
2458
+ * Usage:
2459
+ * ```html
2460
+ * <bsg-tab-navigation
2461
+ * [tabs]="tabs"
2462
+ * [variant]="'text'"
2463
+ * [size]="'md'"
2464
+ * [color]="'default'"
2465
+ * [activeIndex]="0"
2466
+ * (tabChange)="onTabChange($event)"
2467
+ * >
2468
+ * <ng-template bsgTabContent>Content for first tab</ng-template>
2469
+ * <ng-template bsgTabContent>Content for second tab</ng-template>
2470
+ * </bsg-tab-navigation>
2471
+ * ```
2472
+ */
2473
+ declare class TabNavigationComponent {
2474
+ /** Tab size variant */
2475
+ readonly size: _angular_core.InputSignal<TabSize>;
2476
+ /** Tab visual variant */
2477
+ readonly variant: _angular_core.InputSignal<TabVariant>;
2478
+ /** Tab color scheme */
2479
+ readonly color: _angular_core.InputSignal<TabColor>;
2480
+ /** Whether all tabs are disabled */
2481
+ readonly disabled: _angular_core.InputSignal<boolean>;
2482
+ /** List of tab items */
2483
+ readonly tabs: _angular_core.InputSignal<TabItem[]>;
2484
+ /** Active tab index */
2485
+ readonly activeIndex: _angular_core.InputSignal<number>;
2486
+ /** Additional CSS classes for container */
2487
+ readonly className: _angular_core.InputSignal<string | undefined>;
2488
+ /** Tab change event */
2489
+ readonly tabChange: _angular_core.OutputEmitterRef<number>;
2490
+ /** Content children (tab content templates) */
2491
+ readonly tabContents: _angular_core.Signal<readonly TabContentDirective[]>;
2492
+ private readonly _activeIndex;
2493
+ readonly internalActiveIndex: _angular_core.Signal<number>;
2494
+ readonly containerClasses: _angular_core.Signal<string>;
2495
+ readonly tabsListClasses: _angular_core.Signal<string>;
2496
+ readonly tabContentClasses: _angular_core.Signal<string>;
2497
+ readonly iconContentClasses: _angular_core.Signal<string>;
2498
+ readonly labelClasses: _angular_core.Signal<string>;
2499
+ readonly textContentClasses: _angular_core.Signal<string>;
2500
+ getTabClasses(index: number): string;
2501
+ getIconCircleClasses(): string;
2502
+ getIconStroke(_index: number): string;
2503
+ handleTabClick(index: number): void;
2504
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<TabNavigationComponent, never>;
2505
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<TabNavigationComponent, "bsg-tab-navigation", never, { "size": { "alias": "size"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "tabs": { "alias": "tabs"; "required": false; "isSignal": true; }; "activeIndex": { "alias": "activeIndex"; "required": false; "isSignal": true; }; "className": { "alias": "className"; "required": false; "isSignal": true; }; }, { "tabChange": "tabChange"; }, ["tabContents"], never, true, never>;
2506
+ }
2507
+
2508
+ /**
2509
+ * Table Component
2510
+ *
2511
+ * A responsive table wrapper with semantic HTML table element.
2512
+ * Follows shadcn/ui table structure.
2513
+ *
2514
+ * Usage:
2515
+ * ```html
2516
+ * <bsg-table>
2517
+ * <bsg-table-caption>A list of your recent invoices.</bsg-table-caption>
2518
+ * <bsg-table-header>
2519
+ * <bsg-table-row>
2520
+ * <bsg-table-head>Invoice</bsg-table-head>
2521
+ * <bsg-table-head>Status</bsg-table-head>
2522
+ * </bsg-table-row>
2523
+ * </bsg-table-header>
2524
+ * <bsg-table-body>
2525
+ * <bsg-table-row>
2526
+ * <bsg-table-cell>INV001</bsg-table-cell>
2527
+ * <bsg-table-cell>Paid</bsg-table-cell>
2528
+ * </bsg-table-row>
2529
+ * </bsg-table-body>
2530
+ * </bsg-table>
2531
+ * ```
2532
+ */
2533
+ declare class TableComponent {
2534
+ /** Additional CSS classes for wrapper */
2535
+ readonly wrapperClassName: _angular_core.InputSignal<string | undefined>;
2536
+ /** Additional CSS classes for table */
2537
+ readonly className: _angular_core.InputSignal<string | undefined>;
2538
+ readonly wrapperClasses: _angular_core.Signal<string>;
2539
+ readonly tableClasses: _angular_core.Signal<string>;
2540
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<TableComponent, never>;
2541
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<TableComponent, "bsg-table", never, { "wrapperClassName": { "alias": "wrapperClassName"; "required": false; "isSignal": true; }; "className": { "alias": "className"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
2542
+ }
2543
+
2544
+ /**
2545
+ * Table Header Component
2546
+ *
2547
+ * Wraps table header rows (thead element).
2548
+ *
2549
+ * Usage:
2550
+ * ```html
2551
+ * <bsg-table-header>
2552
+ * <bsg-table-row>
2553
+ * <bsg-table-head>Column 1</bsg-table-head>
2554
+ * <bsg-table-head>Column 2</bsg-table-head>
2555
+ * </bsg-table-row>
2556
+ * </bsg-table-header>
2557
+ * ```
2558
+ */
2559
+ declare class TableHeaderComponent {
2560
+ /** Additional CSS classes */
2561
+ readonly className: _angular_core.InputSignal<string | undefined>;
2562
+ readonly computedClasses: _angular_core.Signal<string>;
2563
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<TableHeaderComponent, never>;
2564
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<TableHeaderComponent, "bsg-table-header", never, { "className": { "alias": "className"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
2565
+ }
2566
+
2567
+ /**
2568
+ * Table Body Component
2569
+ *
2570
+ * Wraps table body rows (tbody element).
2571
+ *
2572
+ * Usage:
2573
+ * ```html
2574
+ * <bsg-table-body>
2575
+ * <bsg-table-row>
2576
+ * <bsg-table-cell>Cell 1</bsg-table-cell>
2577
+ * <bsg-table-cell>Cell 2</bsg-table-cell>
2578
+ * </bsg-table-row>
2579
+ * </bsg-table-body>
2580
+ * ```
2581
+ */
2582
+ declare class TableBodyComponent {
2583
+ /** Additional CSS classes */
2584
+ readonly className: _angular_core.InputSignal<string | undefined>;
2585
+ readonly computedClasses: _angular_core.Signal<string>;
2586
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<TableBodyComponent, never>;
2587
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<TableBodyComponent, "bsg-table-body", never, { "className": { "alias": "className"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
2588
+ }
2589
+
2590
+ /**
2591
+ * Table Footer Component
2592
+ *
2593
+ * Wraps table footer rows (tfoot element).
2594
+ *
2595
+ * Usage:
2596
+ * ```html
2597
+ * <bsg-table-footer>
2598
+ * <bsg-table-row>
2599
+ * <bsg-table-cell colSpan="3">Total</bsg-table-cell>
2600
+ * <bsg-table-cell>$2,500.00</bsg-table-cell>
2601
+ * </bsg-table-row>
2602
+ * </bsg-table-footer>
2603
+ * ```
2604
+ */
2605
+ declare class TableFooterComponent {
2606
+ /** Additional CSS classes */
2607
+ readonly className: _angular_core.InputSignal<string | undefined>;
2608
+ readonly computedClasses: _angular_core.Signal<string>;
2609
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<TableFooterComponent, never>;
2610
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<TableFooterComponent, "bsg-table-footer", never, { "className": { "alias": "className"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
2611
+ }
2612
+
2613
+ /**
2614
+ * Table Row Component
2615
+ *
2616
+ * A table row element (tr).
2617
+ *
2618
+ * Usage:
2619
+ * ```html
2620
+ * <bsg-table-row>
2621
+ * <bsg-table-cell>Cell 1</bsg-table-cell>
2622
+ * <bsg-table-cell>Cell 2</bsg-table-cell>
2623
+ * </bsg-table-row>
2624
+ * ```
2625
+ */
2626
+ declare class TableRowComponent {
2627
+ /** Additional CSS classes */
2628
+ readonly className: _angular_core.InputSignal<string | undefined>;
2629
+ /** Whether the row is selected */
2630
+ readonly selected: _angular_core.InputSignal<boolean>;
2631
+ readonly computedClasses: _angular_core.Signal<string>;
2632
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<TableRowComponent, never>;
2633
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<TableRowComponent, "bsg-table-row", never, { "className": { "alias": "className"; "required": false; "isSignal": true; }; "selected": { "alias": "selected"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
2634
+ }
2635
+
2636
+ /**
2637
+ * Table Head Component
2638
+ *
2639
+ * A table header cell element (th).
2640
+ *
2641
+ * Usage:
2642
+ * ```html
2643
+ * <bsg-table-head>Column Name</bsg-table-head>
2644
+ * <bsg-table-head className="w-[100px]">ID</bsg-table-head>
2645
+ * <bsg-table-head className="text-right">Amount</bsg-table-head>
2646
+ * ```
2647
+ */
2648
+ declare class TableHeadComponent {
2649
+ /** Additional CSS classes */
2650
+ readonly className: _angular_core.InputSignal<string | undefined>;
2651
+ /** Column span */
2652
+ readonly colSpan: _angular_core.InputSignal<number | undefined>;
2653
+ /** Scope attribute for accessibility */
2654
+ readonly scope: _angular_core.InputSignal<"col" | "colgroup" | "row" | "rowgroup">;
2655
+ readonly computedClasses: _angular_core.Signal<string>;
2656
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<TableHeadComponent, never>;
2657
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<TableHeadComponent, "bsg-table-head", never, { "className": { "alias": "className"; "required": false; "isSignal": true; }; "colSpan": { "alias": "colSpan"; "required": false; "isSignal": true; }; "scope": { "alias": "scope"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
2658
+ }
2659
+
2660
+ /**
2661
+ * Table Cell Component
2662
+ *
2663
+ * A table data cell element (td).
2664
+ *
2665
+ * Usage:
2666
+ * ```html
2667
+ * <bsg-table-cell>Cell content</bsg-table-cell>
2668
+ * <bsg-table-cell className="font-medium">Bold content</bsg-table-cell>
2669
+ * <bsg-table-cell className="text-right">$250.00</bsg-table-cell>
2670
+ * <bsg-table-cell [colSpan]="3">Spanning cell</bsg-table-cell>
2671
+ * ```
2672
+ */
2673
+ declare class TableCellComponent {
2674
+ /** Additional CSS classes */
2675
+ readonly className: _angular_core.InputSignal<string | undefined>;
2676
+ /** Column span */
2677
+ readonly colSpan: _angular_core.InputSignal<number | undefined>;
2678
+ readonly computedClasses: _angular_core.Signal<string>;
2679
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<TableCellComponent, never>;
2680
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<TableCellComponent, "bsg-table-cell", never, { "className": { "alias": "className"; "required": false; "isSignal": true; }; "colSpan": { "alias": "colSpan"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
2681
+ }
2682
+
2683
+ /**
2684
+ * Table Card Component
2685
+ *
2686
+ * A wrapper that provides a polished card container for tables,
2687
+ * using content projection for header and footer sections.
2688
+ *
2689
+ * UX Considerations:
2690
+ * - Clear visual hierarchy with prominent header
2691
+ * - Consistent spacing and alignment
2692
+ * - Subtle shadows for depth without distraction
2693
+ * - Flexible composition with header/footer slots
2694
+ *
2695
+ * Usage:
2696
+ * ```html
2697
+ * <bsg-table-card>
2698
+ * <bsg-tableCard-header title="My Table Title">
2699
+ * <button slot="action">New Item</button>
2700
+ * </bsg-tableCard-header>
2701
+ *
2702
+ * <bsg-table>
2703
+ * ...
2704
+ * </bsg-table>
2705
+ *
2706
+ * <bsg-tableCard-footer>
2707
+ * <span>Showing 1-10 of 100</span>
2708
+ * </bsg-tableCard-footer>
2709
+ * </bsg-table-card>
2710
+ * ```
2711
+ */
2712
+ declare class TableCardComponent {
2713
+ /** Additional CSS classes for the card container */
2714
+ readonly className: _angular_core.InputSignal<string | undefined>;
2715
+ readonly cardClasses: _angular_core.Signal<string>;
2716
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<TableCardComponent, never>;
2717
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<TableCardComponent, "bsg-table-card", never, { "className": { "alias": "className"; "required": false; "isSignal": true; }; }, {}, never, ["bsg-tableCard-header", "*", "bsg-tableCard-footer"], true, never>;
2718
+ }
2719
+
2720
+ type TableCardHeaderColor = 'default' | 'info' | 'success' | 'warning' | 'destructive';
2721
+ /**
2722
+ * Table Card Header Component
2723
+ *
2724
+ * Header section for table cards with content projection for icon and title.
2725
+ *
2726
+ * Usage:
2727
+ * ```html
2728
+ * <!-- Simple title -->
2729
+ * <bsg-tableCard-header>
2730
+ * <span>Titulo de la Tabla</span>
2731
+ * </bsg-tableCard-header>
2732
+ *
2733
+ * <!-- With icon and title -->
2734
+ * <bsg-tableCard-header color="info">
2735
+ * <svg class="size-5">...</svg>
2736
+ * <span>Titulo de la Tabla</span>
2737
+ * </bsg-tableCard-header>
2738
+ *
2739
+ * <!-- With icon, title and action -->
2740
+ * <bsg-tableCard-header color="success">
2741
+ * <svg class="size-5">...</svg>
2742
+ * <span>Titulo de la Tabla</span>
2743
+ * <button slot="action">Nueva Accion</button>
2744
+ * </bsg-tableCard-header>
2745
+ * ```
2746
+ */
2747
+ declare class TableCardHeaderComponent {
2748
+ /** Semantic color variant */
2749
+ readonly color: _angular_core.InputSignal<TableCardHeaderColor>;
2750
+ /** Additional CSS classes for header */
2751
+ readonly className: _angular_core.InputSignal<string | undefined>;
2752
+ readonly headerClasses: _angular_core.Signal<string>;
2753
+ readonly contentClasses: _angular_core.Signal<string>;
2754
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<TableCardHeaderComponent, never>;
2755
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<TableCardHeaderComponent, "bsg-tableCard-header", never, { "color": { "alias": "color"; "required": false; "isSignal": true; }; "className": { "alias": "className"; "required": false; "isSignal": true; }; }, {}, never, ["*", "[slot='action']"], true, never>;
2756
+ }
2757
+
2758
+ /**
2759
+ * Table Card Footer Component
2760
+ *
2761
+ * Footer section for table cards, typically used for pagination,
2762
+ * summary info, or action buttons.
2763
+ *
2764
+ * Usage:
2765
+ * ```html
2766
+ * <bsg-tableCard-footer>
2767
+ * <span>Showing 1-10 of 100</span>
2768
+ * <div>
2769
+ * <button>Previous</button>
2770
+ * <button>Next</button>
2771
+ * </div>
2772
+ * </bsg-tableCard-footer>
2773
+ * ```
2774
+ */
2775
+ declare class TableCardFooterComponent {
2776
+ /** Additional CSS classes */
2777
+ readonly className: _angular_core.InputSignal<string | undefined>;
2778
+ readonly footerClasses: _angular_core.Signal<string>;
2779
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<TableCardFooterComponent, never>;
2780
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<TableCardFooterComponent, "bsg-tableCard-footer", never, { "className": { "alias": "className"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
2781
+ }
2782
+
2783
+ type TableVariant = 'table-actions' | 'table-basic' | 'table-tabs' | 'list-content';
2784
+ interface TableColumn {
2785
+ key: string;
2786
+ label: string;
2787
+ width?: string;
2788
+ }
2789
+ interface TableRow {
2790
+ [key: string]: any;
2791
+ }
2792
+ interface ListItem {
2793
+ text: string;
2794
+ }
2795
+ interface TabConfig extends TabItem {
2796
+ tableData?: {
2797
+ columns: TableColumn[];
2798
+ rows: TableRow[];
2799
+ };
2800
+ }
2801
+ interface TableAction {
2802
+ label: string;
2803
+ variant?: 'approve' | 'reject' | 'view';
2804
+ onClick?: () => void;
2805
+ }
2806
+ /**
2807
+ * @deprecated Use the new composable table components (TableComponent, TableHeader, TableBody, etc.) instead.
2808
+ * This component is kept for backwards compatibility.
2809
+ */
2810
+ declare class TableContainerComponent {
2811
+ /** Container title */
2812
+ title: string;
2813
+ /** Display variant */
2814
+ variant: TableVariant;
2815
+ /** Header action button (e.g., "Nuevo mensaje") */
2816
+ headerAction?: {
2817
+ label: string;
2818
+ variant?: ButtonVariant;
2819
+ size?: ButtonSize;
2820
+ };
2821
+ isCollapsible: boolean;
2822
+ isExpanded: boolean;
2823
+ disableExpansion: boolean;
2824
+ tableColumns: TableColumn[];
2825
+ tableRows: TableRow[];
2826
+ tablePagination?: {
2827
+ currentPage: number;
2828
+ totalPages: number;
2829
+ pageSize: number;
2830
+ pageSizeOptions: number[];
2831
+ totalItems: number;
2832
+ rangeLabel: string;
2833
+ };
2834
+ showActionsColumn: boolean;
2835
+ actionsColumnLabel: string;
2836
+ actionsColumnWidth: string;
2837
+ listItems: ListItem[];
2838
+ tabs: TabConfig[];
2839
+ activeTabIndex: number;
2840
+ tabsPagination: any[];
2841
+ headerActionClick: EventEmitter<void>;
2842
+ collapseToggle: EventEmitter<boolean>;
2843
+ tabChange: EventEmitter<number>;
2844
+ tablePageChange: EventEmitter<number>;
2845
+ tablePageSizeChange: EventEmitter<number>;
2846
+ tableRefresh: EventEmitter<void>;
2847
+ tabPageChange: EventEmitter<{
2848
+ tabIndex: number;
2849
+ page: number;
2850
+ }>;
2851
+ tabPageSizeChange: EventEmitter<{
2852
+ tabIndex: number;
2853
+ pageSize: number;
2854
+ }>;
2855
+ tabRefresh: EventEmitter<number>;
2856
+ rowAction: EventEmitter<{
2857
+ rowIndex: number;
2858
+ action: TableAction;
2859
+ }>;
2860
+ get containerClasses(): string[];
2861
+ toggleCollapse(): void;
2862
+ onHeaderAction(): void;
2863
+ onTabChange(index: number): void;
2864
+ onTablePageChange(page: number): void;
2865
+ onTablePageSizeChange(pageSize: number): void;
2866
+ onTableRefresh(): void;
2867
+ onTabPageChange(tabIndex: number, page: number): void;
2868
+ onTabPageSizeChange(tabIndex: number, pageSize: number): void;
2869
+ onTabRefresh(tabIndex: number): void;
2870
+ onRowAction(rowIndex: number, action: TableAction): void;
2871
+ getActionVariant(actionVariant?: string): ButtonVariant;
2872
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<TableContainerComponent, never>;
2873
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<TableContainerComponent, "bsg-table-container", never, { "title": { "alias": "title"; "required": false; }; "variant": { "alias": "variant"; "required": false; }; "headerAction": { "alias": "headerAction"; "required": false; }; "isCollapsible": { "alias": "isCollapsible"; "required": false; }; "isExpanded": { "alias": "isExpanded"; "required": false; }; "disableExpansion": { "alias": "disableExpansion"; "required": false; }; "tableColumns": { "alias": "tableColumns"; "required": false; }; "tableRows": { "alias": "tableRows"; "required": false; }; "tablePagination": { "alias": "tablePagination"; "required": false; }; "showActionsColumn": { "alias": "showActionsColumn"; "required": false; }; "actionsColumnLabel": { "alias": "actionsColumnLabel"; "required": false; }; "actionsColumnWidth": { "alias": "actionsColumnWidth"; "required": false; }; "listItems": { "alias": "listItems"; "required": false; }; "tabs": { "alias": "tabs"; "required": false; }; "activeTabIndex": { "alias": "activeTabIndex"; "required": false; }; "tabsPagination": { "alias": "tabsPagination"; "required": false; }; }, { "headerActionClick": "headerActionClick"; "collapseToggle": "collapseToggle"; "tabChange": "tabChange"; "tablePageChange": "tablePageChange"; "tablePageSizeChange": "tablePageSizeChange"; "tableRefresh": "tableRefresh"; "tabPageChange": "tabPageChange"; "tabPageSizeChange": "tabPageSizeChange"; "tabRefresh": "tabRefresh"; "rowAction": "rowAction"; }, never, never, true, never>;
2874
+ }
2875
+
2876
+ /**
2877
+ * Table wrapper variants
2878
+ *
2879
+ * Container with subtle shadow for depth and rounded corners
2880
+ * for a modern, polished look
2881
+ */
2882
+ declare const tableWrapperVariants: (props?: class_variance_authority_types.ClassProp | undefined) => string;
2883
+ /**
2884
+ * Table variants
2885
+ *
2886
+ * Clean table with proper spacing and typography
2887
+ */
2888
+ declare const tableVariants: (props?: class_variance_authority_types.ClassProp | undefined) => string;
2889
+ /**
2890
+ * Table Header variants
2891
+ *
2892
+ * Distinct header with subtle background gradient
2893
+ * and clear visual separation from body
2894
+ */
2895
+ declare const tableHeaderVariants: (props?: class_variance_authority_types.ClassProp | undefined) => string;
2896
+ /**
2897
+ * Table Body variants
2898
+ *
2899
+ * Clean body with alternating row colors option
2900
+ */
2901
+ declare const tableBodyVariants: (props?: class_variance_authority_types.ClassProp | undefined) => string;
2902
+ /**
2903
+ * Table Footer variants
2904
+ *
2905
+ * Distinct footer for totals and summaries
2906
+ */
2907
+ declare const tableFooterVariants: (props?: class_variance_authority_types.ClassProp | undefined) => string;
2908
+ /**
2909
+ * Table Row variants
2910
+ *
2911
+ * Interactive rows with clear hover and selected states
2912
+ * Following UX best practices for discoverability
2913
+ */
2914
+ declare const tableRowVariants: (props?: class_variance_authority_types.ClassProp | undefined) => string;
2915
+ /**
2916
+ * Table Head variants
2917
+ *
2918
+ * Clear, readable headers with proper hierarchy
2919
+ * Using semibold weight and blue accent for brand consistency
2920
+ */
2921
+ declare const tableHeadVariants: (props?: class_variance_authority_types.ClassProp | undefined) => string;
2922
+ /**
2923
+ * Table Cell variants
2924
+ *
2925
+ * Readable cells with proper spacing and alignment
2926
+ */
2927
+ declare const tableCellVariants: (props?: class_variance_authority_types.ClassProp | undefined) => string;
2928
+ /**
2929
+ * Table Card Header variants
2930
+ *
2931
+ * Prominent header with semantic colors and clear hierarchy
2932
+ * Following UX principles for visual weight distribution
2933
+ */
2934
+ declare const tableCardHeaderVariants: (props?: ({
2935
+ color?: "default" | "info" | "success" | "warning" | "destructive" | null | undefined;
2936
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
2937
+ /**
2938
+ * Table Card Footer variants
2939
+ *
2940
+ * Clean footer area for pagination and actions
2941
+ */
2942
+ declare const tableCardFooterVariants: (props?: class_variance_authority_types.ClassProp | undefined) => string;
2943
+ /**
2944
+ * Table Pagination wrapper variants
2945
+ *
2946
+ * Clean pagination area with proper spacing
2947
+ */
2948
+ declare const tablePaginationVariants: (props?: class_variance_authority_types.ClassProp | undefined) => string;
2949
+ /**
2950
+ * Table Empty State variants
2951
+ *
2952
+ * For when table has no data
2953
+ */
2954
+ declare const tableEmptyStateVariants: (props?: class_variance_authority_types.ClassProp | undefined) => string;
2955
+ /**
2956
+ * Table Loading State variants
2957
+ *
2958
+ * For skeleton loading states
2959
+ */
2960
+ declare const tableLoadingVariants: (props?: class_variance_authority_types.ClassProp | undefined) => string;
2961
+ /**
2962
+ * Striped table modifier
2963
+ *
2964
+ * Apply to tbody for alternating row colors
2965
+ */
2966
+ declare const tableStripedVariants: (props?: class_variance_authority_types.ClassProp | undefined) => string;
2967
+ /**
2968
+ * Compact table modifier
2969
+ *
2970
+ * Reduced padding for dense data
2971
+ */
2972
+ declare const tableCompactVariants: (props?: class_variance_authority_types.ClassProp | undefined) => string;
2973
+
2211
2974
  declare const textareaVariants: (props?: ({
2212
2975
  size?: "default" | "sm" | "lg" | null | undefined;
2213
- resize?: "none" | "horizontal" | "vertical" | "both" | null | undefined;
2976
+ resize?: "horizontal" | "vertical" | "none" | "both" | null | undefined;
2214
2977
  } & class_variance_authority_types.ClassProp) | undefined) => string;
2215
2978
  type TextareaSize = VariantProps<typeof textareaVariants>['size'];
2216
2979
  type TextareaResize = VariantProps<typeof textareaVariants>['resize'];
@@ -2222,7 +2985,7 @@ declare class TextareaComponent implements ControlValueAccessor, Validator {
2222
2985
  rows: _angular_core.InputSignal<number>;
2223
2986
  ariaInvalid: _angular_core.InputSignal<boolean | undefined>;
2224
2987
  size: _angular_core.InputSignal<"default" | "sm" | "lg" | null | undefined>;
2225
- resize: _angular_core.InputSignal<"none" | "horizontal" | "vertical" | "both" | null | undefined>;
2988
+ resize: _angular_core.InputSignal<"horizontal" | "vertical" | "none" | "both" | null | undefined>;
2226
2989
  className: _angular_core.InputSignal<string | undefined>;
2227
2990
  get hostClasses(): string;
2228
2991
  value: _angular_core.WritableSignal<string>;
@@ -2585,5 +3348,5 @@ declare class TooltipComponent implements AfterContentInit {
2585
3348
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<TooltipComponent, "bsg-tooltip", never, { "content": { "alias": "content"; "required": false; "isSignal": true; }; "placement": { "alias": "placement"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "triggerClassName": { "alias": "triggerClassName"; "required": false; "isSignal": true; }; "contentClassName": { "alias": "contentClassName"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
2586
3349
  }
2587
3350
 
2588
- export { AccordionComponent, AccordionContentComponent, AccordionItemComponent, AccordionTriggerComponent, AlertComponent, AvatarComponent, BadgeComponent, ButtonComponent, CardBodyComponent, CardComponent, CardFooterComponent, CardHeaderComponent, CarouselComponent, CarouselItemComponent, CheckboxComponent, CollapsibleComponent, CollapsibleContentComponent, CollapsibleTriggerDirective, ComboboxComponent, DialogComponent, InputComponent, LabelComponent, RadioComponent, RadioGroupComponent, SelectComponent, SidebarComponent, SidebarContentComponent, SidebarFooterComponent, SidebarGroupActionComponent, SidebarGroupComponent, SidebarGroupContentComponent, SidebarGroupLabelComponent, SidebarHeaderComponent, SidebarInsetComponent, SidebarMenuActionComponent, SidebarMenuBadgeComponent, SidebarMenuButtonComponent, SidebarMenuComponent, SidebarMenuItemComponent, SidebarMenuSubButtonComponent, SidebarMenuSubComponent, SidebarMenuSubItemComponent, SidebarProviderComponent, SidebarRailComponent, SidebarSeparatorComponent, SidebarService, SidebarTriggerComponent, SkeletonComponent, SwitchComponent, TextareaComponent, TimePickerComponent, ToastComponent, TooltipComponent, accordionContentVariants, accordionItemVariants, accordionTriggerVariants, accordionVariants, alertCloseVariants, alertContentVariants, alertIconVariants, alertVariants, avatarIconVariants, avatarImgVariants, avatarInitialsVariants, avatarVariants, badgeIconVariants, badgeVariants, buttonIconOnlyVariants, buttonIconVariants, buttonLabelVariants, buttonVariants, cardActionIconVariants, cardCurrencyContentVariants, cardCurrencyIconVariants, cardCurrencyLabelVariants, cardCurrencyTextVariants, cardHeaderRowVariants, cardHeaderVariants, cardHelperDescriptionVariants, cardHelperRowVariants, cardHelperVariants, cardInfoIconVariants, cardInfoLabelVariants, cardInfoTextVariants, cardMetricTitleVariants, cardMetricValueVariants, cardSlotBodyVariants, cardSlotFooterVariants, cardSlotHeaderVariants, cardValueVariants, cardVariants, carouselArrowVariants, carouselChevronVariants, carouselContainerVariants, carouselIndicatorVariants, carouselIndicatorsVariants, carouselRootVariants, carouselTrackVariants, carouselViewportVariants, checkboxVariants, comboboxDropdownVariants, comboboxEmptyStateVariants, comboboxErrorMessageVariants, comboboxIconVariants, comboboxOptionVariants, comboboxOptionsContainerVariants, comboboxSearchInputVariants, comboboxSearchWrapperVariants, comboboxTriggerVariants, comboboxValueVariants, comboboxWrapperVariants, dialogBodyVariants, dialogContentVariants, dialogFooterVariants, dialogHeaderVariants, dialogOverlayVariants, inputVariants, labelVariants, radioFocusRingVariants, radioGroupVariants, radioInnerVariants, radioLabelVariants, radioOptionVariants, radioOuterVariants, radioWrapperVariants, selectDropdownVariants, selectErrorVariants, selectIconVariants, selectOptionVariants, selectTriggerVariants, selectValueVariants, selectWrapperVariants, sidebarChevronVariants, sidebarContentVariants, sidebarFooterVariants, sidebarGroupActionVariants, sidebarGroupContentVariants, sidebarGroupLabelVariants, sidebarGroupVariants, sidebarHeaderVariants, sidebarInsetVariants, sidebarMenuActionVariants, sidebarMenuBadgeVariants, sidebarMenuButtonVariants, sidebarMenuItemVariants, sidebarMenuSkeletonVariants, sidebarMenuSubButtonVariants, sidebarMenuSubItemVariants, sidebarMenuSubVariants, sidebarMenuVariants, sidebarProviderVariants, sidebarRailVariants, sidebarSeparatorVariants, sidebarTriggerVariants, sidebarVariants, sidebarWrapperVariants, skeletonVariants, switchRootVariants, switchThumbVariants, textareaVariants, timepickerActionButtonVariants, timepickerActionsVariants, timepickerColumnHeaderVariants, timepickerColumnVariants, timepickerDropdownVariants, timepickerErrorMessageVariants, timepickerFieldVariants, timepickerIconButtonVariants, timepickerInputVariants, timepickerLabelVariants, timepickerListVariants, timepickerOptionVariants, timepickerSelectionAreaVariants, timepickerSeparatorVariants, timepickerWrapperVariants, toastAccentVariants, toastCloseVariants, toastContentVariants, toastIconVariants, toastVariants, tooltipArrowVariants, tooltipContentVariants, tooltipTriggerVariants };
2589
- export type { AccordionType, AccordionVariant, AccordionVariantsProps, AlertVariant, AlertVariantsProps, AvatarSize, AvatarType, AvatarVariantsProps, BadgeIconVariantsProps, BadgeLayout, BadgeSize, BadgeVariant, BadgeVariantsProps, ButtonShape, ButtonSize, ButtonVariant, ButtonVariantsProps, CardContentVariant, CardVariant, CardVariantsProps, CarouselArrowVariantsProps, CarouselIndicatorVariantsProps, CheckboxSize, ComboboxOption, ComboboxSize, ComboboxState, ComboboxTriggerVariantsProps, ComboboxWrapperVariantsProps, DialogBodyVariantsProps, DialogContentVariantsProps, DialogFooterVariantsProps, DialogHeaderTone, DialogHeaderVariantsProps, DialogSize, IconName, InputSize, RadioFocusRingVariantsProps, RadioGroupOption, RadioGroupOrientation, RadioGroupVariantsProps, RadioInnerVariantsProps, RadioLabelVariantsProps, RadioOptionVariantsProps, RadioOuterVariantsProps, RadioSize, RadioState, RadioWrapperVariantsProps, SelectOption, SelectSize, SelectState, SelectTriggerVariantsProps, SidebarCollapsible, SidebarMenuActionVariantsProps, SidebarMenuButtonVariantsProps, SidebarMenuSubButtonVariantsProps, SidebarSide, SidebarState, SidebarVariant, SkeletonType, SkeletonVariantsProps, SwitchSize, SwitchVariantsProps, TextareaResize, TextareaSize, TimePickerSize, TimePickerState, TimePickerWrapperVariantsProps, ToastVariant, ToastVariantsProps, TooltipContentVariantsProps, TooltipPlacement };
3351
+ export { AccordionComponent, AccordionContentComponent, AccordionItemComponent, AccordionTriggerComponent, AlertComponent, AvatarComponent, BadgeComponent, ButtonComponent, CardBodyComponent, CardComponent, CardFooterComponent, CardHeaderComponent, CarouselComponent, CarouselItemComponent, CheckboxComponent, CollapsibleComponent, CollapsibleContentComponent, CollapsibleTriggerDirective, ComboboxComponent, DialogComponent, InputComponent, LabelComponent, RadioComponent, RadioGroupComponent, SelectComponent, SidebarComponent, SidebarContentComponent, SidebarFooterComponent, SidebarGroupActionComponent, SidebarGroupComponent, SidebarGroupContentComponent, SidebarGroupLabelComponent, SidebarHeaderComponent, SidebarInsetComponent, SidebarMenuActionComponent, SidebarMenuBadgeComponent, SidebarMenuButtonComponent, SidebarMenuComponent, SidebarMenuItemComponent, SidebarMenuSubButtonComponent, SidebarMenuSubComponent, SidebarMenuSubItemComponent, SidebarProviderComponent, SidebarRailComponent, SidebarSeparatorComponent, SidebarService, SidebarTriggerComponent, SkeletonComponent, SpinnerComponent, SwitchComponent, TabContentDirective, TabNavigationComponent, TableBodyComponent, TableCardComponent, TableCardFooterComponent, TableCardHeaderComponent, TableCellComponent, TableComponent, TableContainerComponent, TableFooterComponent, TableHeadComponent, TableHeaderComponent, TableRowComponent, TabsComponent, TabsContentComponent, TabsListComponent, TabsTriggerComponent, TextareaComponent, TimePickerComponent, ToastComponent, TooltipComponent, accordionContentVariants, accordionItemVariants, accordionTriggerVariants, accordionVariants, alertCloseVariants, alertContentVariants, alertIconVariants, alertVariants, avatarIconVariants, avatarImgVariants, avatarInitialsVariants, avatarVariants, badgeIconVariants, badgeVariants, buttonIconOnlyVariants, buttonIconVariants, buttonLabelVariants, buttonSpinnerVariants, buttonVariants, cardActionIconVariants, cardCurrencyContentVariants, cardCurrencyIconVariants, cardCurrencyLabelVariants, cardCurrencyTextVariants, cardHeaderRowVariants, cardHeaderVariants, cardHelperDescriptionVariants, cardHelperRowVariants, cardHelperVariants, cardInfoIconVariants, cardInfoLabelVariants, cardInfoTextVariants, cardMetricTitleVariants, cardMetricValueVariants, cardSlotBodyVariants, cardSlotFooterVariants, cardSlotHeaderVariants, cardValueVariants, cardVariants, carouselArrowVariants, carouselChevronVariants, carouselContainerVariants, carouselIndicatorVariants, carouselIndicatorsVariants, carouselRootVariants, carouselTrackVariants, carouselViewportVariants, checkboxVariants, comboboxDropdownVariants, comboboxEmptyStateVariants, comboboxErrorMessageVariants, comboboxIconVariants, comboboxOptionVariants, comboboxOptionsContainerVariants, comboboxSearchInputVariants, comboboxSearchWrapperVariants, comboboxTriggerVariants, comboboxValueVariants, comboboxWrapperVariants, dialogBodyVariants, dialogContentVariants, dialogFooterVariants, dialogHeaderVariants, dialogOverlayVariants, inputVariants, labelVariants, radioFocusRingVariants, radioGroupVariants, radioInnerVariants, radioLabelVariants, radioOptionVariants, radioOuterVariants, radioWrapperVariants, selectDropdownVariants, selectErrorVariants, selectIconVariants, selectOptionVariants, selectTriggerVariants, selectValueVariants, selectWrapperVariants, sidebarChevronVariants, sidebarContentVariants, sidebarFooterVariants, sidebarGroupActionVariants, sidebarGroupContentVariants, sidebarGroupLabelVariants, sidebarGroupVariants, sidebarHeaderVariants, sidebarInsetVariants, sidebarMenuActionVariants, sidebarMenuBadgeVariants, sidebarMenuButtonVariants, sidebarMenuItemVariants, sidebarMenuSkeletonVariants, sidebarMenuSubButtonVariants, sidebarMenuSubItemVariants, sidebarMenuSubVariants, sidebarMenuVariants, sidebarProviderVariants, sidebarRailVariants, sidebarSeparatorVariants, sidebarTriggerVariants, sidebarVariants, sidebarWrapperVariants, skeletonVariants, spinnerVariants, switchRootVariants, switchThumbVariants, tabIconCircleVariants, tabIconContentVariants, tabItemVariants, tabLabelVariants, tabNavigationVariants, tabTextContentVariants, tableBodyVariants, tableCardFooterVariants, tableCardHeaderVariants, tableCellVariants, tableCompactVariants, tableEmptyStateVariants, tableFooterVariants, tableHeadVariants, tableHeaderVariants, tableLoadingVariants, tablePaginationVariants, tableRowVariants, tableStripedVariants, tableVariants, tableWrapperVariants, textareaVariants, timepickerActionButtonVariants, timepickerActionsVariants, timepickerColumnHeaderVariants, timepickerColumnVariants, timepickerDropdownVariants, timepickerErrorMessageVariants, timepickerFieldVariants, timepickerIconButtonVariants, timepickerInputVariants, timepickerLabelVariants, timepickerListVariants, timepickerOptionVariants, timepickerSelectionAreaVariants, timepickerSeparatorVariants, timepickerWrapperVariants, toastAccentVariants, toastCloseVariants, toastContentVariants, toastIconVariants, toastVariants, tooltipArrowVariants, tooltipContentVariants, tooltipTriggerVariants };
3352
+ export type { AccordionType, AccordionVariant, AccordionVariantsProps, AlertVariant, AlertVariantsProps, AvatarSize, AvatarType, AvatarVariantsProps, BadgeIconVariantsProps, BadgeLayout, BadgeSize, BadgeVariant, BadgeVariantsProps, ButtonShape, ButtonSize, ButtonVariant, ButtonVariantsProps, CardContentVariant, CardVariant, CardVariantsProps, CarouselArrowVariantsProps, CarouselIndicatorVariantsProps, CheckboxSize, ComboboxOption, ComboboxSize, ComboboxState, ComboboxTriggerVariantsProps, ComboboxWrapperVariantsProps, DialogBodyVariantsProps, DialogContentVariantsProps, DialogFooterVariantsProps, DialogHeaderTone, DialogHeaderVariantsProps, DialogSize, InputSize, ListItem, RadioFocusRingVariantsProps, RadioGroupOption, RadioGroupOrientation, RadioGroupVariantsProps, RadioInnerVariantsProps, RadioLabelVariantsProps, RadioOptionVariantsProps, RadioOuterVariantsProps, RadioSize, RadioState, RadioWrapperVariantsProps, SelectOption, SelectSize, SelectState, SelectTriggerVariantsProps, SidebarCollapsible, SidebarMenuActionVariantsProps, SidebarMenuButtonVariantsProps, SidebarMenuSubButtonVariantsProps, SidebarSide, SidebarState, SidebarVariant, SkeletonType, SkeletonVariantsProps, SpinnerSize, SpinnerVariant, SpinnerVariantsProps, SwitchSize, SwitchVariantsProps, TabColor, TabConfig, TabItem, TabItemVariantsProps, TabLayout, TabSize, TabVariant, TableAction, TableCardHeaderColor, TableColumn, TableRow, TableVariant, TabsTriggerVariantsProps, TextareaResize, TextareaSize, TimePickerSize, TimePickerState, TimePickerWrapperVariantsProps, ToastVariant, ToastVariantsProps, TooltipContentVariantsProps, TooltipPlacement };