@ifsworld/granite-components 16.1.2 → 17.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (149) hide show
  1. package/README.md +0 -2
  2. package/carousel/index.d.ts +45 -2
  3. package/date-picker/index.d.ts +123 -4
  4. package/fesm2022/ifsworld-granite-components-carousel.mjs +11 -11
  5. package/fesm2022/ifsworld-granite-components-carousel.mjs.map +1 -1
  6. package/fesm2022/ifsworld-granite-components-date-picker.mjs +40 -53
  7. package/fesm2022/ifsworld-granite-components-date-picker.mjs.map +1 -1
  8. package/fesm2022/ifsworld-granite-components-file-upload.mjs +10 -10
  9. package/fesm2022/ifsworld-granite-components-file-upload.mjs.map +1 -1
  10. package/fesm2022/ifsworld-granite-components-table.mjs +29 -29
  11. package/fesm2022/ifsworld-granite-components-table.mjs.map +1 -1
  12. package/fesm2022/ifsworld-granite-components-tooltip.mjs +23 -24
  13. package/fesm2022/ifsworld-granite-components-tooltip.mjs.map +1 -1
  14. package/fesm2022/ifsworld-granite-components.mjs +480 -564
  15. package/fesm2022/ifsworld-granite-components.mjs.map +1 -1
  16. package/file-upload/index.d.ts +99 -2
  17. package/index.d.ts +1981 -86
  18. package/package.json +8 -8
  19. package/table/index.d.ts +112 -4
  20. package/tooltip/index.d.ts +50 -3
  21. package/carousel/lib/carousel.component.d.ts +0 -34
  22. package/carousel/lib/carousel.module.d.ts +0 -10
  23. package/date-picker/lib/date-picker-base.d.ts +0 -34
  24. package/date-picker/lib/date-picker-trigger-for.directive.d.ts +0 -70
  25. package/date-picker/lib/date-picker.component.d.ts +0 -10
  26. package/date-picker/lib/date-picker.module.d.ts +0 -15
  27. package/date-picker/lib/date-range-picker.component.d.ts +0 -12
  28. package/file-upload/lib/directives/file-drag-and-drop.directive.d.ts +0 -18
  29. package/file-upload/lib/file-upload.component.d.ts +0 -51
  30. package/file-upload/lib/file-upload.constants.d.ts +0 -37
  31. package/file-upload/lib/file-upload.module.d.ts +0 -11
  32. package/file-upload/lib/file-upload.utils.d.ts +0 -1
  33. package/lib/arrange-grid/arrange-grid-item.component.d.ts +0 -30
  34. package/lib/arrange-grid/arrange-grid.component.d.ts +0 -58
  35. package/lib/arrange-grid/arrange-grid.module.d.ts +0 -9
  36. package/lib/avatar/avatar-default-status/avatar-default-status.component.d.ts +0 -15
  37. package/lib/avatar/avatar.component.d.ts +0 -23
  38. package/lib/avatar/avatar.component.public-types.d.ts +0 -7
  39. package/lib/avatar/avatar.module.d.ts +0 -11
  40. package/lib/avatar/custom-avatar-status.directive.d.ts +0 -9
  41. package/lib/avatar/empty-avatar/empty-avatar.component.d.ts +0 -7
  42. package/lib/badge/badge.component.d.ts +0 -19
  43. package/lib/badge/badge.module.d.ts +0 -8
  44. package/lib/badge/testing/badge.harness.d.ts +0 -21
  45. package/lib/button/button.component.d.ts +0 -38
  46. package/lib/button/button.module.d.ts +0 -7
  47. package/lib/card-list/card/card-avatar.component.d.ts +0 -5
  48. package/lib/card-list/card/card-content/card-actions.component.d.ts +0 -5
  49. package/lib/card-list/card/card-content/card-body.component.d.ts +0 -5
  50. package/lib/card-list/card/card-content/card-content.component.d.ts +0 -5
  51. package/lib/card-list/card/card-content/card-footer.component.d.ts +0 -5
  52. package/lib/card-list/card/card-content/card-header-subtitle.component.d.ts +0 -5
  53. package/lib/card-list/card/card-content/card-header-title.component.d.ts +0 -5
  54. package/lib/card-list/card/card-content/card-header.component.d.ts +0 -5
  55. package/lib/card-list/card/card.component.d.ts +0 -5
  56. package/lib/card-list/card-list.component.d.ts +0 -9
  57. package/lib/card-list/card-list.module.d.ts +0 -18
  58. package/lib/checkbox/checkbox-group.component.d.ts +0 -6
  59. package/lib/checkbox/checkbox.component.d.ts +0 -29
  60. package/lib/checkbox/checkbox.module.d.ts +0 -8
  61. package/lib/chips/chip-input.d.ts +0 -89
  62. package/lib/chips/chip-list.component.d.ts +0 -185
  63. package/lib/chips/chip.component.d.ts +0 -104
  64. package/lib/chips/chips.module.d.ts +0 -12
  65. package/lib/collapsible-group/collapsible-group-body.directive.d.ts +0 -7
  66. package/lib/collapsible-group/collapsible-group-header.directive.d.ts +0 -7
  67. package/lib/collapsible-group/collapsible-group.component.d.ts +0 -16
  68. package/lib/collapsible-group/collapsible-group.module.d.ts +0 -11
  69. package/lib/contacts/contact-item/contact-item.component.d.ts +0 -11
  70. package/lib/contacts/contact-item-default-status/contact-item-default-status.component.d.ts +0 -15
  71. package/lib/contacts/contact-item-title/contact-item-title.component.d.ts +0 -7
  72. package/lib/contacts/contacts-profile/contacts-profile.component.d.ts +0 -8
  73. package/lib/contacts/contacts-trigger/contacts-trigger-data.d.ts +0 -23
  74. package/lib/contacts/contacts-trigger/contacts-trigger-for.directive.d.ts +0 -69
  75. package/lib/contacts/contacts-types/contacts.component.private-types.d.ts +0 -8
  76. package/lib/contacts/contacts-types/contacts.component.public-types.d.ts +0 -30
  77. package/lib/contacts/contacts.component.d.ts +0 -29
  78. package/lib/contacts/contacts.module.d.ts +0 -17
  79. package/lib/contacts/custom-profile.directive.d.ts +0 -8
  80. package/lib/contacts/custom-status.directive.d.ts +0 -9
  81. package/lib/core/animation.d.ts +0 -23
  82. package/lib/core/client-environment.d.ts +0 -26
  83. package/lib/core/common-behaviors/disabled.d.ts +0 -10
  84. package/lib/core/core.module.d.ts +0 -12
  85. package/lib/core/devices/client-input-desktop.directive.d.ts +0 -9
  86. package/lib/core/devices/client-input-touch.directive.d.ts +0 -9
  87. package/lib/core/devices/client-output-desktop.directive.d.ts +0 -9
  88. package/lib/core/devices/client-output-touch.directive.d.ts +0 -9
  89. package/lib/core/hide-on-overflow.directive.d.ts +0 -21
  90. package/lib/core/overlay-base.d.ts +0 -16
  91. package/lib/core/overlay-position-config.d.ts +0 -12
  92. package/lib/core/overlay-trigger-for-base.directive.d.ts +0 -32
  93. package/lib/core/overlay.service.d.ts +0 -21
  94. package/lib/core/pipes/pure-pipes.module.d.ts +0 -7
  95. package/lib/core/pipes/title.pipe.d.ts +0 -7
  96. package/lib/core/radio-checkbox-base.d.ts +0 -8
  97. package/lib/core/services/names-utils-service.d.ts +0 -17
  98. package/lib/core/theme.library.d.ts +0 -38
  99. package/lib/core/types.d.ts +0 -2
  100. package/lib/grid/grid.component.d.ts +0 -75
  101. package/lib/grid/grid.module.d.ts +0 -8
  102. package/lib/icon/icon.component.d.ts +0 -13
  103. package/lib/icon/icon.module.d.ts +0 -7
  104. package/lib/input-field/input-field.component.d.ts +0 -48
  105. package/lib/input-field/input-field.module.d.ts +0 -10
  106. package/lib/label/label.component.d.ts +0 -10
  107. package/lib/label/label.module.d.ts +0 -8
  108. package/lib/menu/divider.directive.d.ts +0 -6
  109. package/lib/menu/menu-base.d.ts +0 -219
  110. package/lib/menu/menu-custom-template.directive.d.ts +0 -14
  111. package/lib/menu/menu-desktop-animations.d.ts +0 -12
  112. package/lib/menu/menu-errors.d.ts +0 -24
  113. package/lib/menu/menu-item.component.d.ts +0 -36
  114. package/lib/menu/menu-panel.d.ts +0 -23
  115. package/lib/menu/menu-positions.d.ts +0 -9
  116. package/lib/menu/menu-touch-animations.d.ts +0 -17
  117. package/lib/menu/menu-touch-close.component.d.ts +0 -5
  118. package/lib/menu/menu-touch-title.component.d.ts +0 -14
  119. package/lib/menu/menu-trigger-for.directive.d.ts +0 -200
  120. package/lib/menu/menu.component.d.ts +0 -6
  121. package/lib/menu/menu.module.d.ts +0 -18
  122. package/lib/menu/testing/menu.harness.d.ts +0 -68
  123. package/lib/menu/title.directive.d.ts +0 -5
  124. package/lib/progress-bar/progress-bar-legend/progress-bar-legend.component.d.ts +0 -8
  125. package/lib/progress-bar/progress-bar-legend-base.d.ts +0 -8
  126. package/lib/progress-bar/progress-bar-legend-trigger-for.directive.d.ts +0 -18
  127. package/lib/progress-bar/progress-bar.component.d.ts +0 -28
  128. package/lib/progress-bar/progress-bar.model.d.ts +0 -11
  129. package/lib/progress-bar/progress-bar.module.d.ts +0 -14
  130. package/lib/radio-button/radio-button.component.d.ts +0 -34
  131. package/lib/radio-button/radio-button.module.d.ts +0 -8
  132. package/lib/radio-button/radio-group.component.d.ts +0 -6
  133. package/lib/toggle-switch/toggle-switch.component.d.ts +0 -29
  134. package/lib/toggle-switch/toggle-switch.module.d.ts +0 -7
  135. package/table/lib/cell/cell-align/cell-align-classes.directive.d.ts +0 -9
  136. package/table/lib/cell/cell.d.ts +0 -8
  137. package/table/lib/cell/table-data-cell.component.d.ts +0 -12
  138. package/table/lib/cell/table-header-cell.component.d.ts +0 -6
  139. package/table/lib/column/table-column.directive.d.ts +0 -23
  140. package/table/lib/column-size/column-size.directive.d.ts +0 -11
  141. package/table/lib/table-constants.library.d.ts +0 -6
  142. package/table/lib/table.component.d.ts +0 -26
  143. package/table/lib/table.model.d.ts +0 -6
  144. package/table/lib/table.module.d.ts +0 -16
  145. package/tooltip/lib/Services/granite-tooltip.service.d.ts +0 -10
  146. package/tooltip/lib/tooltip-constants.library.d.ts +0 -4
  147. package/tooltip/lib/tooltip-trigger-for.directive.d.ts +0 -39
  148. package/tooltip/lib/tooltip.component.d.ts +0 -7
  149. package/tooltip/lib/tooltip.module.d.ts +0 -9
package/index.d.ts CHANGED
@@ -1,86 +1,1981 @@
1
- export * from './lib/arrange-grid/arrange-grid.module';
2
- export * from './lib/arrange-grid/arrange-grid.component';
3
- export * from './lib/arrange-grid/arrange-grid-item.component';
4
- export * from './lib/grid/grid.module';
5
- export * from './lib/grid/grid.component';
6
- export * from './lib/badge/badge.module';
7
- export * from './lib/badge/badge.component';
8
- export * from './lib/badge/testing/badge.harness';
9
- export * from './lib/menu/menu.module';
10
- export * from './lib/menu/menu.component';
11
- export * from './lib/menu/menu-desktop-animations';
12
- export * from './lib/menu/menu-touch-animations';
13
- export * from './lib/menu/menu-item.component';
14
- export * from './lib/menu/menu-trigger-for.directive';
15
- export * from './lib/menu/testing/menu.harness';
16
- export * from './lib/menu/divider.directive';
17
- export * from './lib/menu/title.directive';
18
- export * from './lib/menu/menu-touch-close.component';
19
- export * from './lib/menu/menu-touch-title.component';
20
- export * from './lib/menu/menu-custom-template.directive';
21
- export * from './lib/icon/icon.module';
22
- export * from './lib/icon/icon.component';
23
- export * from './lib/toggle-switch/toggle-switch.module';
24
- export * from './lib/toggle-switch/toggle-switch.component';
25
- export * from './lib/radio-button/radio-button.module';
26
- export * from './lib/radio-button/radio-button.component';
27
- export * from './lib/radio-button/radio-group.component';
28
- export * from './lib/checkbox/checkbox.module';
29
- export * from './lib/checkbox/checkbox.component';
30
- export * from './lib/checkbox/checkbox-group.component';
31
- export * from './lib/button/button.module';
32
- export * from './lib/button/button.component';
33
- export * from './lib/input-field/input-field.module';
34
- export * from './lib/input-field/input-field.component';
35
- export * from './lib/chips/chips.module';
36
- export * from './lib/chips/chip-list.component';
37
- export * from './lib/chips/chip.component';
38
- export * from './lib/chips/chip-input';
39
- export * from './lib/label/label.module';
40
- export * from './lib/label/label.component';
41
- export * from './lib/contacts/contacts.module';
42
- export * from './lib/contacts/contacts.component';
43
- export * from './lib/contacts/contacts-types/contacts.component.public-types';
44
- export * from './lib/contacts/contacts-profile/contacts-profile.component';
45
- export * from './lib/contacts/contact-item/contact-item.component';
46
- export * from './lib/contacts/contact-item-default-status/contact-item-default-status.component';
47
- export * from './lib/contacts/contact-item-title/contact-item-title.component';
48
- export * from './lib/contacts/contacts-trigger/contacts-trigger-for.directive';
49
- export * from './lib/contacts/custom-status.directive';
50
- export * from './lib/contacts/custom-profile.directive';
51
- export * from './lib/contacts/contacts-types/contacts.component.public-types';
52
- export * from './lib/avatar/avatar.module';
53
- export * from './lib/avatar/avatar.component';
54
- export * from './lib/avatar/avatar-default-status/avatar-default-status.component';
55
- export * from './lib/avatar/custom-avatar-status.directive';
56
- export * from './lib/avatar/empty-avatar/empty-avatar.component';
57
- export * from './lib/avatar/avatar.component.public-types';
58
- export * from './lib/progress-bar/progress-bar.module';
59
- export * from './lib/progress-bar/progress-bar.component';
60
- export * from './lib/progress-bar/progress-bar.model';
61
- export * from './lib/core/client-environment';
62
- export * from './lib/core/core.module';
63
- export * from './lib/core/devices/client-output-touch.directive';
64
- export * from './lib/core/devices/client-output-desktop.directive';
65
- export * from './lib/core/devices/client-input-touch.directive';
66
- export * from './lib/core/devices/client-input-desktop.directive';
67
- export * from './lib/core/common-behaviors/disabled';
68
- export * from './lib/core/hide-on-overflow.directive';
69
- export * from './lib/core/pipes/pure-pipes.module';
70
- export * from './lib/core/pipes/title.pipe';
71
- export * from './lib/core/types';
72
- export * from './lib/card-list/card-list.module';
73
- export * from './lib/card-list/card-list.component';
74
- export * from './lib/card-list/card/card.component';
75
- export * from './lib/card-list/card/card-content/card-content.component';
76
- export * from './lib/card-list/card/card-content/card-actions.component';
77
- export * from './lib/card-list/card/card-content/card-body.component';
78
- export * from './lib/card-list/card/card-content/card-header.component';
79
- export * from './lib/card-list/card/card-avatar.component';
80
- export * from './lib/card-list/card/card-content/card-header-title.component';
81
- export * from './lib/card-list/card/card-content/card-header-subtitle.component';
82
- export * from './lib/card-list/card/card-content/card-footer.component';
83
- export * from './lib/collapsible-group/collapsible-group.module';
84
- export * from './lib/collapsible-group/collapsible-group.component';
85
- export * from './lib/collapsible-group/collapsible-group-body.directive';
86
- export * from './lib/collapsible-group/collapsible-group-header.directive';
1
+ import * as i0 from '@angular/core';
2
+ import { OnChanges, AfterContentInit, OnDestroy, QueryList, SimpleChanges, InjectionToken, TemplateRef, EventEmitter, AfterContentChecked, ElementRef, OnInit, AfterViewInit, DoCheck, PipeTransform } from '@angular/core';
3
+ import * as i2 from '@angular/common';
4
+ import { ComponentHarness, BaseHarnessFilters, HarnessPredicate } from '@angular/cdk/testing';
5
+ import { FocusOrigin, FocusableOption, FocusMonitor, FocusKeyManager } from '@angular/cdk/a11y';
6
+ import { Direction } from '@angular/cdk/bidi';
7
+ import { AnimationEvent, AnimationTriggerMetadata } from '@angular/animations';
8
+ import { Subject, BehaviorSubject, Observable, Subscription } from 'rxjs';
9
+ import * as i10 from '@angular/cdk/overlay';
10
+ import { ConnectedPosition, PositionStrategy, RepositionScrollStrategy, BlockScrollStrategy, CloseScrollStrategy } from '@angular/cdk/overlay';
11
+ import * as i11 from '@angular/cdk/portal';
12
+ import { SelectionModel } from '@angular/cdk/collections';
13
+ import * as i5 from '@angular/forms';
14
+ import { NgForm, FormGroupDirective, NgControl, ControlValueAccessor } from '@angular/forms';
15
+ import * as i6 from '@ifsworld/granite-components/tooltip';
16
+ import * as i12 from '@angular/cdk/scrolling';
17
+
18
+ declare class GraniteArrangeGridItemComponent {
19
+ /**
20
+ * Column span to render.
21
+ * For use in template only. Do not use outside of this component.
22
+ * @ignore
23
+ */
24
+ _columnSpan: number | null;
25
+ private element;
26
+ /**
27
+ * Number of cells the item would span. Used by arrange grid in column
28
+ * orientation to fill any unused space caused by wrapped items.
29
+ */
30
+ set columnSpan(value: number | null);
31
+ /**
32
+ * Update element styles
33
+ */
34
+ updateStyles(): void;
35
+ /**
36
+ * Set CSS variable value or remove it if a null value is given.
37
+ * Would of course rather have used property binding but that is not
38
+ * supported until (perhaps) Angular 9.
39
+ * See: https://github.com/angular/angular/issues/9343
40
+ */
41
+ protected setCssProperty(variable: string, value: string | null): void;
42
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteArrangeGridItemComponent, never>;
43
+ static ɵcmp: i0.ɵɵComponentDeclaration<GraniteArrangeGridItemComponent, "granite-arrange-grid-item", never, {}, {}, never, ["*"], false, never>;
44
+ }
45
+
46
+ declare enum GraniteArrangeGridOrientation {
47
+ columns = "columns",
48
+ rows = "rows"
49
+ }
50
+ declare class GraniteArrangeGridComponent implements OnChanges, AfterContentInit, OnDestroy {
51
+ orientation: GraniteArrangeGridOrientation;
52
+ /** Default number of columns to use in column orientation */
53
+ /** Exposes column orientation to template */
54
+ classColumnOrientation: boolean;
55
+ /** Exposes row orientation to template */
56
+ classRowOrientation: boolean;
57
+ arrangeGridItemComponents: QueryList<GraniteArrangeGridItemComponent>;
58
+ static readonly defaultCols: number;
59
+ /** How to present grid items; `columns` (default) or `rows` */
60
+ /**
61
+ * Number of grid columns to use when orientation is set to `column`. The
62
+ * default is two columns.
63
+ */
64
+ set cols(value: number);
65
+ get cols(): number;
66
+ /** Number of columns to render */
67
+ protected _cols: number;
68
+ /**
69
+ * Number of rows to render. Will be set internally taking column count,
70
+ * the number of items and any cell wrapping into consideration.
71
+ */
72
+ protected _rows: number;
73
+ set rows(value: number);
74
+ get rows(): number;
75
+ private element;
76
+ /** Nexted on component destruction to complete other observables. */
77
+ private destroy$;
78
+ ngAfterContentInit(): void;
79
+ ngOnChanges(changes: SimpleChanges): void;
80
+ ngOnDestroy(): void;
81
+ /**
82
+ * Update grid row template style.
83
+ *
84
+ * Use content height of all but last row and let the last grow
85
+ * to take up any remaining space.
86
+ */
87
+ updateStyles(): void;
88
+ /**
89
+ * Set CSS variable value or remove it if a null value is given.
90
+ * Would of course rather have used property binding but that is not
91
+ * supported until (perhaps) Angular 9.
92
+ * See: https://github.com/angular/angular/issues/9343
93
+ *
94
+ * TODO: Replace with property binding with Angular 9 upgrade
95
+ */
96
+ protected setCssProperty(variable: string, value: string | null): void;
97
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteArrangeGridComponent, never>;
98
+ static ɵcmp: i0.ɵɵComponentDeclaration<GraniteArrangeGridComponent, "granite-arrange-grid", never, { "orientation": { "alias": "orientation"; "required": false; }; "cols": { "alias": "cols"; "required": false; }; }, {}, ["arrangeGridItemComponents"], ["granite-arrange-grid-item"], false, never>;
99
+ }
100
+
101
+ declare class GraniteArrangeGridModule {
102
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteArrangeGridModule, never>;
103
+ static ɵmod: i0.ɵɵNgModuleDeclaration<GraniteArrangeGridModule, [typeof GraniteArrangeGridComponent, typeof GraniteArrangeGridItemComponent], [typeof i2.CommonModule], [typeof GraniteArrangeGridComponent, typeof GraniteArrangeGridItemComponent]>;
104
+ static ɵinj: i0.ɵɵInjectorDeclaration<GraniteArrangeGridModule>;
105
+ }
106
+
107
+ /**
108
+ * Grid item component
109
+ *
110
+ * Merely a wrapper for CSS Grid items, accepting item style as input parameters.
111
+ */
112
+ declare class GraniteGridItemComponent implements OnChanges {
113
+ columnStart: number;
114
+ columnEnd: number;
115
+ rowStart: number;
116
+ rowEnd: number;
117
+ private element;
118
+ private renderer;
119
+ ngOnChanges(): void;
120
+ /**
121
+ * Update element styles
122
+ */
123
+ updateStyles(): void;
124
+ /**
125
+ * Sets the element style. Needs to be set manually to avoid "Changed after
126
+ * checked" errors that would occur with HostBinding.
127
+ */
128
+ private setStyle;
129
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteGridItemComponent, never>;
130
+ static ɵcmp: i0.ɵɵComponentDeclaration<GraniteGridItemComponent, "granite-grid-item", never, { "columnStart": { "alias": "columnStart"; "required": false; }; "columnEnd": { "alias": "columnEnd"; "required": false; }; "rowStart": { "alias": "rowStart"; "required": false; }; "rowEnd": { "alias": "rowEnd"; "required": false; }; }, {}, never, ["*"], false, never>;
131
+ }
132
+ /**
133
+ * Grid
134
+ *
135
+ * A wrapper around a native CSS Grid. Anything can be used for grid items, but
136
+ * `GridItemComponent` is recommended for common cases.
137
+ */
138
+ declare class GraniteGridComponent implements AfterContentInit, OnChanges {
139
+ /**
140
+ * Number of grid columns, unless set via styling (grid-template-columns)
141
+ *
142
+ * Setting this value will produce equally sized columns
143
+ */
144
+ set cols(value: number);
145
+ get cols(): number;
146
+ /** Number of columns to render */
147
+ protected _cols: number;
148
+ /**
149
+ * Number of grid rows, unless set via styling (grid-template-rows)
150
+ *
151
+ * Setting this value will produce equally sized rows
152
+ */
153
+ set rows(value: number);
154
+ get rows(): number;
155
+ /** Number of rows to render */
156
+ protected _rows: number;
157
+ private element;
158
+ ngAfterContentInit(): void;
159
+ ngOnChanges(changes: SimpleChanges): void;
160
+ /** Update element styles */
161
+ updateStyles(): void;
162
+ /**
163
+ * Set CSS variable value or remove it if a null value is given.
164
+ * Would of course rather have used property binding but that is not
165
+ * supported until (perhaps) Angular 9.
166
+ * See: https://github.com/angular/angular/issues/9343
167
+ *
168
+ * TODO: Replace with property binding with Angular 9 upgrade
169
+ */
170
+ protected setCssProperty(variable: string, value: string | null): void;
171
+ /** Update grid column template style */
172
+ protected updateColumnStyles(): void;
173
+ /** Update grid row template style */
174
+ protected updateRowStyles(): void;
175
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteGridComponent, never>;
176
+ static ɵcmp: i0.ɵɵComponentDeclaration<GraniteGridComponent, "granite-grid", never, { "cols": { "alias": "cols"; "required": false; }; "rows": { "alias": "rows"; "required": false; }; }, {}, never, ["*"], false, never>;
177
+ }
178
+
179
+ declare class GraniteGridModule {
180
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteGridModule, never>;
181
+ static ɵmod: i0.ɵɵNgModuleDeclaration<GraniteGridModule, [typeof GraniteGridComponent, typeof GraniteGridItemComponent], [typeof i2.CommonModule], [typeof GraniteGridComponent, typeof GraniteGridItemComponent]>;
182
+ static ɵinj: i0.ɵɵInjectorDeclaration<GraniteGridModule>;
183
+ }
184
+
185
+ declare class GraniteBadgeComponent implements OnChanges {
186
+ /**
187
+ * Design token name to get the value for the Background color
188
+ */
189
+ backgroundColor: string;
190
+ /**
191
+ * Design token name to get the value for the Font color
192
+ */
193
+ color: string;
194
+ /** Pill style badge */
195
+ pill: boolean;
196
+ private elementRef;
197
+ ngOnChanges(changes: SimpleChanges): void;
198
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteBadgeComponent, never>;
199
+ static ɵcmp: i0.ɵɵComponentDeclaration<GraniteBadgeComponent, "granite-badge", ["graniteBadge"], { "backgroundColor": { "alias": "backgroundColor"; "required": false; }; "color": { "alias": "color"; "required": false; }; "pill": { "alias": "pill"; "required": false; }; }, {}, never, ["*"], false, never>;
200
+ }
201
+
202
+ declare class GraniteBadgeModule {
203
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteBadgeModule, never>;
204
+ static ɵmod: i0.ɵɵNgModuleDeclaration<GraniteBadgeModule, [typeof GraniteBadgeComponent], [typeof i2.CommonModule], [typeof GraniteBadgeComponent]>;
205
+ static ɵinj: i0.ɵɵInjectorDeclaration<GraniteBadgeModule>;
206
+ }
207
+
208
+ declare class GraniteBadgeHarness extends ComponentHarness {
209
+ static hostSelector: string;
210
+ /**
211
+ * Gets a `HarnessPredicate` that can be used to search for a `GraniteBadgeHarness` that meets
212
+ * certain criteria.
213
+ * @param options Options for filtering which badge instances are considered a match.
214
+ * @return a `HarnessPredicate` configured with the given options.
215
+ */
216
+ static with(options?: GraniteBadgeHarnessFilters): HarnessPredicate<GraniteBadgeHarness>;
217
+ /** Gets the Badge text. */
218
+ getText(): Promise<string>;
219
+ /** Whether it's a Pill type badge. */
220
+ isPill(): Promise<boolean>;
221
+ }
222
+ /** A set of criteria that can be used to filter a list of `GraniteBadgeHarness` instances. */
223
+ interface GraniteBadgeHarnessFilters extends BaseHarnessFilters {
224
+ /** Only find instances whose text matches the given value. */
225
+ text?: string | RegExp;
226
+ pill?: boolean;
227
+ }
228
+
229
+ /**
230
+ * Injection token used to provide components knowledge of what device types
231
+ * are being used for input.
232
+ */
233
+ declare const GRANITE_CLIENT_INPUT: InjectionToken<ClientInputInterface>;
234
+ /**
235
+ * Injection token used to provide components knowledge of what device type
236
+ * is being used for output.
237
+ */
238
+ declare const GRANITE_CLIENT_OUTPUT: InjectionToken<ClientOutputInterface>;
239
+ type InputDeviceTypes = void | 'touch' | 'mouse' | 'keyboard' | 'onscreen-keyboard';
240
+ type OutputDeviceTypes = void | 'touch' | 'desktop';
241
+ interface ClientInputInterface {
242
+ devices: InputDeviceTypes[];
243
+ }
244
+ interface ClientOutputInterface {
245
+ device: OutputDeviceTypes;
246
+ }
247
+ interface DevicePrefabInterface {
248
+ input: ClientInputInterface;
249
+ output: ClientOutputInterface;
250
+ }
251
+ declare const deviceDesktop: DevicePrefabInterface;
252
+ declare const deviceTouch: DevicePrefabInterface;
253
+
254
+ /**
255
+ * @license
256
+ * Copyright Google LLC All Rights Reserved.
257
+ *
258
+ * Use of this source code is governed by an MIT-style license that can be
259
+ * found in the LICENSE file at https://angular.io/license
260
+ */
261
+ type MenuPositionX = 'before' | 'after' | 'center';
262
+ type MenuPositionY = 'above' | 'below' | 'center';
263
+
264
+ type ClosedEventType = void | 'click' | 'keydown' | 'tab';
265
+ type OpenedEventType = void | 'click' | 'keydown';
266
+ interface GraniteMenuPanelInterface {
267
+ xPosition: MenuPositionX;
268
+ yPosition: MenuPositionY;
269
+ templateRef: TemplateRef<any>;
270
+ parentMenu?: GraniteMenuPanelInterface | undefined;
271
+ direction?: Direction;
272
+ focusFirstItem: (origin?: FocusOrigin) => void;
273
+ closed: EventEmitter<ClosedEventType>;
274
+ opened: EventEmitter<OpenedEventType>;
275
+ readonly panelId?: string;
276
+ showBackButton: boolean;
277
+ }
278
+
279
+ declare class GraniteMenuItemComponent implements OnDestroy, FocusableOption {
280
+ /** ARIA role for the menu item. */
281
+ role: 'menuitem' | 'menuitemradio' | 'menuitemcheckbox';
282
+ _parentMenu?: GraniteMenuPanelInterface;
283
+ /** Stream that emits when the menu item is hovered. */
284
+ readonly _hovered: Subject<this>;
285
+ /** Stream that emits when the menu item is focused. */
286
+ readonly _focused: Subject<this>;
287
+ /** Whether the menu item acts as a trigger for a sub-menu (used for styling) */
288
+ _triggersSubmenu: boolean;
289
+ /**
290
+ * Whether the menu item is highlighted, e.g. in the "breadcrumb" parent chain
291
+ * of sub menu trigger items
292
+ */
293
+ _highlighted: boolean;
294
+ /** Client input device information */
295
+ _clientInput: ClientInputInterface;
296
+ /** Client output device information */
297
+ _clientOutput: ClientOutputInterface;
298
+ private _elementRef;
299
+ private _focusMonitor;
300
+ constructor();
301
+ ngOnDestroy(): void;
302
+ /** Focuses the menu item. */
303
+ focus(origin?: FocusOrigin, options?: FocusOptions): void;
304
+ /** Returns the host DOM element. */
305
+ _getHostElement(): HTMLElement;
306
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteMenuItemComponent, never>;
307
+ static ɵcmp: i0.ɵɵComponentDeclaration<GraniteMenuItemComponent, "[graniteMenuItem]", ["graniteMenuItem"], { "role": { "alias": "role"; "required": false; }; }, {}, never, ["*"], false, never>;
308
+ }
309
+
310
+ /**
311
+ * Directive to mark an element as a custom template area within a menu.
312
+ * This allows inserting custom content (dropdowns, inputs, etc.) anywhere
313
+ * within the menu, maintaining the natural DOM order.
314
+ */
315
+ declare class GraniteMenuCustomTemplateDirective {
316
+ private _elementRef;
317
+ _handleEvent(event: Event): void;
318
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteMenuCustomTemplateDirective, never>;
319
+ static ɵdir: i0.ɵɵDirectiveDeclaration<GraniteMenuCustomTemplateDirective, "[graniteMenuCustomTemplate]", ["graniteMenuCustomTemplate"], {}, {}, never, never, false, never>;
320
+ }
321
+
322
+ /** Menu panel animation states */
323
+ type TransformMenuStates = 'void' | 'enter' | 'enter-from-below' | 'below-with-delay' | 'below' | 'pan' | 'hide' | 'pan-hidden';
324
+ /**
325
+ * Menu panel animation transform/state object. Has to be an object as we supply
326
+ * the `xOffset` parameter and not just the state name.
327
+ */
328
+ type TransformMenu = {
329
+ /** Current animation state name */
330
+ value: TransformMenuStates;
331
+ params: {
332
+ /** How far the menu has been panned/swiped by the user */
333
+ xOffset: number;
334
+ };
335
+ };
336
+ /** Base class with all of the menu functionality. */
337
+ declare class _MenuBaseComponent implements AfterContentInit, OnDestroy, AfterContentChecked, GraniteMenuPanelInterface {
338
+ /** Position of the menu in the X axis. */
339
+ get xPosition(): MenuPositionX;
340
+ set xPosition(value: MenuPositionX);
341
+ /** Position of the menu in the Y axis. */
342
+ get yPosition(): MenuPositionY;
343
+ set yPosition(value: MenuPositionY);
344
+ /**
345
+ * Custom position configuration for the overlay.
346
+ * When provided, this overrides the default positioning logic based on
347
+ * xPosition and yPosition. Uses Angular CDK ConnectedPosition format.
348
+ * If empty or not provided, falls back to default positioning behavior.
349
+ */
350
+ cdkConnectedOverlayPosition: ConnectedPosition[];
351
+ /** Optional touch menu panel title */
352
+ title: string;
353
+ /**
354
+ * Touch menu close button label. If not set, any label set by parent will
355
+ * be used.
356
+ */
357
+ closeLabel: string;
358
+ openOnHover: boolean;
359
+ scrollStrategy: 'reposition' | 'close';
360
+ /**
361
+ * Styles to be applied to the menu.
362
+ * Added as there is no way to apply styles to the menu from the outside.
363
+ */
364
+ styles: {
365
+ [key: string]: string;
366
+ };
367
+ touchStyles: {
368
+ [key: string]: string;
369
+ };
370
+ templateRef: TemplateRef<any>;
371
+ /** All items inside the menu. Includes items nested inside another menu. */
372
+ _allItems: QueryList<GraniteMenuItemComponent>;
373
+ /**
374
+ * Event emitted when the menu is closed
375
+ */
376
+ readonly closed: EventEmitter<ClosedEventType>;
377
+ /**
378
+ * Event emitted when the menu is opened
379
+ */
380
+ readonly opened: EventEmitter<OpenedEventType>;
381
+ /**
382
+ * Reference to the custom template directive if present
383
+ */
384
+ customTemplate: GraniteMenuCustomTemplateDirective;
385
+ preventParentClose: boolean;
386
+ /**
387
+ * Used for locating the panel in tests and setting the aria-control attribute
388
+ * for the menu trigger.
389
+ */
390
+ readonly panelId: string;
391
+ /** Parent menu of the current menu panel. */
392
+ parentMenu: GraniteMenuPanelInterface | undefined;
393
+ /** Layout direction of the menu. */
394
+ direction: Direction;
395
+ /** Whether to show back button in touch menu title bar */
396
+ showBackButton: boolean;
397
+ /** Whether to show touch menu title bar */
398
+ showTitle: boolean;
399
+ /** Whether to add a close button below the menu */
400
+ showCloseButton: boolean;
401
+ /** Observable current state of the panel animation. */
402
+ _transformMenu: BehaviorSubject<TransformMenu>;
403
+ /** Emits whenever an animation on the menu completes. */
404
+ _animationDone: Subject<AnimationEvent>;
405
+ /** Whether the menu is animating. */
406
+ _isAnimating: boolean;
407
+ /** Whether the menu is about to be destroyed. */
408
+ _isClosing: boolean;
409
+ /** Client input device information */
410
+ _clientInput: ClientInputInterface;
411
+ /** Client output device information */
412
+ _clientOutput: ClientOutputInterface;
413
+ private _changeDetectorRef;
414
+ private _menuEmpty$;
415
+ _isMenuEmpty$: Observable<boolean>;
416
+ /** Only the direct descendant menu items. */
417
+ private _directDescendantItems;
418
+ private _keyManager;
419
+ /** Subscription to tab events on the menu panel */
420
+ private _tabSubscription;
421
+ private _xPosition;
422
+ private _yPosition;
423
+ /** Current state of the panel animation. */
424
+ set _panelAnimationState(state: TransformMenuStates);
425
+ /**
426
+ * Current horizontal offset. Used with `pan` and `pan-hidden`
427
+ * animation states.
428
+ */
429
+ private xOffset;
430
+ ngAfterContentChecked(): void;
431
+ ngAfterContentInit(): void;
432
+ ngOnDestroy(): void;
433
+ /**
434
+ * Stream that combines the `_hovered` observables of all the menu's items
435
+ * into a single observable. Emits whenever the hovered menu item changes.
436
+ */
437
+ _hovered(): Observable<GraniteMenuItemComponent>;
438
+ /** Handle a keyboard event from the menu, delegating to the appropriate action. */
439
+ _handleKeydown(event: KeyboardEvent): void;
440
+ /**
441
+ * Focus the first item in the menu.
442
+ * @param origin Action from which the focus originated. Used to set the correct styling.
443
+ */
444
+ focusFirstItem(origin?: FocusOrigin): void;
445
+ /** Updates the `showTitle` property for touch device UI */
446
+ _updateShowTitle(): void;
447
+ /** Starts the enter animation */
448
+ _startAnimation(): void;
449
+ /** Resets the panel animation to its initial state. */
450
+ _resetAnimation(): void;
451
+ /**
452
+ * Starts the 'below' animation, moving a menu down, out of view below the
453
+ * viewport. Used to close the whole menu, for example when clicking
454
+ * the backdrop.
455
+ */
456
+ _startTouchCloseDownAnimation(): void;
457
+ /**
458
+ * Starts the 'below-with-delay' animation, moving a menu down, out of view below the
459
+ * viewport. Used to close the whole menu as a response to the user tapping
460
+ * a menu item. There is a short delay before the animation starts, to that
461
+ * the user gets a visual feedback on what item was selected.
462
+ */
463
+ _startTouchCloseDownAnimationWithDelay(): void;
464
+ /**
465
+ * Starts the 'void' animation, moving a (sub) menu out of view to the side
466
+ * of the viewport. Used when going "back" from a sub menu.
467
+ */
468
+ _startTouchCloseSideAnimation(): void;
469
+ /**
470
+ * Starts the enter-from-below animation, moving a (root) menu into view,
471
+ * Animates upwards from a starting position below the viewport.
472
+ */
473
+ _startTouchRootEnterAnimation(): void;
474
+ /** Starts the enter animation, moving a (sub) menu into view. */
475
+ _startTouchSubmenuEnterAnimation(): void;
476
+ /**
477
+ * Starts the pan animation, to position a submenu in a response
478
+ * to user dragging sideways (panning).
479
+ */
480
+ _startTouchPanAnimation(xOffset: number): void;
481
+ /**
482
+ * Starts the pan-hidden animation, to position a parent menu next to an
483
+ * active submenu that the user is dragging sideways (panning).
484
+ */
485
+ _startTouchHidePanAnimation(xOffset: number): void;
486
+ /**
487
+ * Starts the hide animation, to make a parent menu slide out to leave
488
+ * space for a submenu.
489
+ */
490
+ _startTouchHideAnimation(): void;
491
+ /** Callback that is invoked when the panel animation completes. */
492
+ _onAnimationDone(event: AnimationEvent): void;
493
+ _onAnimationStart(event: AnimationEvent): void;
494
+ /**
495
+ * Handle click on the menu by emitting on the `closed` emitter
496
+ * with a `click` reason
497
+ */
498
+ _handleClick(event?: Event): void;
499
+ /**
500
+ * Handle click on the close button by emitting on the `closed` emitter
501
+ * without any particular reason
502
+ */
503
+ _handleCloseClick(): void;
504
+ /**
505
+ * Handle click on the back icon by emitting on the `clicked` emitter
506
+ */
507
+ _handleBackClick(e: MouseEvent): void;
508
+ /**
509
+ * Update client device information for the menu and its menu items.
510
+ */
511
+ _setDevice(clientInput: ClientInputInterface, clientOutput: ClientOutputInterface): void;
512
+ /**
513
+ * Resets the active item in the menu. This is used when the menu is opened, allowing
514
+ * the user to start from the first option when pressing the down arrow.
515
+ */
516
+ resetActiveItem(): void;
517
+ /**
518
+ * Sets up a stream that will keep track of any newly-added menu items and will update the list
519
+ * of direct descendants. We collect the descendants this way, because `_allItems` can include
520
+ * items that are part of child menus, and using a custom way of registering items is unreliable
521
+ * when it comes to maintaining the item order.
522
+ */
523
+ private _updateDirectDescendants;
524
+ static ɵfac: i0.ɵɵFactoryDeclaration<_MenuBaseComponent, never>;
525
+ static ɵdir: i0.ɵɵDirectiveDeclaration<_MenuBaseComponent, never, never, { "xPosition": { "alias": "xPosition"; "required": false; }; "yPosition": { "alias": "yPosition"; "required": false; }; "cdkConnectedOverlayPosition": { "alias": "cdkConnectedOverlayPosition"; "required": false; }; "title": { "alias": "title"; "required": false; }; "closeLabel": { "alias": "closeLabel"; "required": false; }; "openOnHover": { "alias": "openOnHover"; "required": false; }; "scrollStrategy": { "alias": "scrollStrategy"; "required": false; }; "styles": { "alias": "styles"; "required": false; }; "touchStyles": { "alias": "touchStyles"; "required": false; }; "preventParentClose": { "alias": "preventParentClose"; "required": false; }; }, { "closed": "closed"; "opened": "opened"; }, ["customTemplate", "_allItems"], never, true, never>;
526
+ }
527
+
528
+ declare class GraniteMenuComponent extends _MenuBaseComponent {
529
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteMenuComponent, never>;
530
+ static ɵcmp: i0.ɵɵComponentDeclaration<GraniteMenuComponent, "granite-menu", ["graniteMenu"], {}, {}, never, ["*"], false, never>;
531
+ }
532
+
533
+ /**
534
+ * Directive used to turn a button element into a (popup) menu trigger
535
+ *
536
+ * Stripped-down version of Angular Material's menu trigger directive (.../menu/menu-trigger.ts)
537
+ */
538
+ declare class GraniteMenuTriggerForDirective implements AfterContentInit, OnDestroy, OnChanges {
539
+ /** References the menu instance that the trigger is associated with. */
540
+ menu: _MenuBaseComponent;
541
+ openOnClick?: boolean;
542
+ /** Whether the associated menu is open */
543
+ isMenuOpened: boolean;
544
+ private openedBy;
545
+ private _hoverSubscription;
546
+ private _menuCloseSubscription;
547
+ private _closingActionsSubscription;
548
+ private _portal;
549
+ private _overlayRef;
550
+ private _document?;
551
+ private _overlay;
552
+ private _element;
553
+ private _viewContainerRef;
554
+ private _changeDetectionRef;
555
+ private _parentMenu;
556
+ private _clientInput;
557
+ private _clientOutput;
558
+ private _menuItemInstance;
559
+ private _dir;
560
+ private _focusMonitor;
561
+ private _touchStartTime;
562
+ private _touchTimeTaken;
563
+ private _touchStartX;
564
+ private _touchStartY;
565
+ private _touchCurrentX;
566
+ private _touchCurrentY;
567
+ private _touchTranslateX;
568
+ private _touchLockedX;
569
+ private _touchMaxX;
570
+ private _touchTouchingElement;
571
+ constructor();
572
+ ngOnChanges(changes: SimpleChanges): void;
573
+ ngAfterContentInit(): void;
574
+ ngOnDestroy(): void;
575
+ /** Handles change of associated menu */
576
+ _handleMenuChange(): void;
577
+ isOpen(): boolean;
578
+ /** Open the associated menu */
579
+ openMenu(): void;
580
+ /** Emits an eventtype when the menu is opened */
581
+ openedEvent(): void;
582
+ /** Whether the menu triggers a sub-menu or a top-level one. */
583
+ triggersSubmenu(): boolean;
584
+ /** Toggles the menu between the open and closed states. */
585
+ toggleMenu(): void;
586
+ /** Close the associated menu */
587
+ closeMenu(): void;
588
+ /**
589
+ * Focuses the menu trigger.
590
+ * @param origin Source of the menu trigger's focus.
591
+ */
592
+ focus(origin?: FocusOrigin, options?: FocusOptions): void;
593
+ /** Detach menu portal from overlay and update open state */
594
+ _destroyMenu(): void;
595
+ /** Handles mouse presses on the trigger. */
596
+ _handleMousedown(event: MouseEvent): void;
597
+ /** Handles key presses on the trigger. */
598
+ _handleKeydown(event: KeyboardEvent): void;
599
+ /** Handles click events on the trigger. */
600
+ _handleClick(event: MouseEvent): void;
601
+ /**
602
+ * Handles touch start events on the trigger.
603
+ * Needs to be an arrow function so we can easily use addEventListener and removeEventListener.
604
+ */
605
+ private _handleTouchStart;
606
+ /** Handles the cases where the user hovers over the trigger. */
607
+ private _handleHover;
608
+ /**
609
+ * Restores focus to the element that was focused before the menu was open.
610
+ * Could be the root trigger button or a submenu trigger item
611
+ */
612
+ private _restoreFocus;
613
+ private _setIsMenuOpen;
614
+ /**
615
+ * This method checks that a valid instance of MenuComponent has been passed into
616
+ * graniteMenuTriggerFor. If not, an exception is thrown.
617
+ */
618
+ private _checkMenu;
619
+ /**
620
+ * Returns strategy for positioning the overlay for desktop devices:
621
+ * Place adjacent to the trigger button (preferably immediately below)
622
+ * in order to show as much of the menu as possible.
623
+ */
624
+ private _desktopPositionStrategy;
625
+ /**
626
+ * Sets the appropriate positions on a position strategy
627
+ * so the overlay connects with the trigger correctly.
628
+ * @param positionStrategy Strategy whose position to update.
629
+ */
630
+ private _setPosition;
631
+ /** Returns a stream that emits whenever an action that should close the menu occurs. */
632
+ private _menuClosingActions;
633
+ /**
634
+ * Whether to automatically open submenus on hover. This is true when showing
635
+ * desktop menus and having mouse support.
636
+ */
637
+ private _openOnHover;
638
+ /**
639
+ * Whether to toggle submenus on click. This is true when showing desktop menus
640
+ * without mouse support. Which, by the way, is not a great idea to begin with.
641
+ */
642
+ private _toggleOnSubmenuClick;
643
+ /** Set animation state to bring a newly opened menu into view */
644
+ private animateOpenMenu;
645
+ private animateTouchOpenMenu;
646
+ /** Set animation state to close the active menu */
647
+ private animateCloseMenu;
648
+ private _animateTouchCloseMenu;
649
+ /**
650
+ * Set animation state to place the menu and any parent at the given
651
+ * horizontal position, i.e. following touch pan movement.
652
+ *
653
+ * @param xOffset Horizontal offset
654
+ */
655
+ private animateSetMenuPosition;
656
+ /**
657
+ * Returns strategy for positioning the overlay depending on what type of
658
+ * device the menu is being shown on
659
+ */
660
+ private _positionStrategy;
661
+ /**
662
+ * Returns strategy for positioning the overlay for touch devices:
663
+ * Place centered at the bottom of the screen.
664
+ */
665
+ private _touchPositionStrategy;
666
+ /**
667
+ * Handles touch start events on the overlay host element (wrapper).
668
+ * Needs to be an arrow function so we can easily use addEventListener and removeEventListener.
669
+ */
670
+ private _handleOverlayTouchStart;
671
+ private _handleOverlayTouchMove;
672
+ private _handleOverlayTouchEnd;
673
+ /**
674
+ * Remove touch device pan/swipe listeners from overlay host element
675
+ */
676
+ private addOverlayListeners;
677
+ /**
678
+ * Remove touch device pan/swipe listeners from overlay host element
679
+ */
680
+ private removeOverlayListeners;
681
+ /**
682
+ * Standard exponential ease out function
683
+ *
684
+ * @param current Current value
685
+ * @param offset Offset value, to which calculated value will be added
686
+ * @param target The target value
687
+ * @param end Value to which current value is compared
688
+ */
689
+ private easeOutExpo;
690
+ /**
691
+ * Sets the scroll strategy for the overlay based on the client output device and menu scroll strategy input.
692
+ *
693
+ * @param {OutputDeviceTypes} clientOutputDevice - The type of client output device (e.g., 'touch').
694
+ * @param {'reposition' | 'close'} menuScrollStrategyInput - The scroll strategy input for the menu.
695
+ * @returns {ScrollStrategy} The appropriate scroll strategy for the overlay.
696
+ */
697
+ private setScrollStrategyToOverylay;
698
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteMenuTriggerForDirective, never>;
699
+ static ɵdir: i0.ɵɵDirectiveDeclaration<GraniteMenuTriggerForDirective, "[graniteMenuTriggerFor]", ["graniteMenuTriggerFor"], { "menu": { "alias": "graniteMenuTriggerFor"; "required": false; }; "openOnClick": { "alias": "openOnClick"; "required": false; }; }, {}, never, never, false, never>;
700
+ }
701
+
702
+ declare class GraniteMenuTouchCloseComponent {
703
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteMenuTouchCloseComponent, never>;
704
+ static ɵcmp: i0.ɵɵComponentDeclaration<GraniteMenuTouchCloseComponent, "[graniteMenuTouchCloseItem]", ["graniteMenuTouchCloseItem"], {}, {}, never, ["*"], false, never>;
705
+ }
706
+
707
+ declare class GraniteMenuTouchTitleItemComponent {
708
+ /**
709
+ * Whether the menu item acts as a trigger to return to a parent menu
710
+ * (used for styling)
711
+ */
712
+ _triggersBack: boolean;
713
+ constructor();
714
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteMenuTouchTitleItemComponent, never>;
715
+ static ɵcmp: i0.ɵɵComponentDeclaration<GraniteMenuTouchTitleItemComponent, "[graniteMenuTouchTitleItem]", ["graniteMenuTouchTitleItem"], {}, {}, never, ["*"], false, never>;
716
+ }
717
+
718
+ declare class GraniteDividerDirective {
719
+ dividerDirection: string;
720
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteDividerDirective, never>;
721
+ static ɵdir: i0.ɵɵDirectiveDeclaration<GraniteDividerDirective, "[graniteDivider]", ["graniteDivider"], { "dividerDirection": { "alias": "dividerDirection"; "required": false; }; }, {}, never, never, false, never>;
722
+ }
723
+
724
+ declare class GraniteTitleDirective {
725
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteTitleDirective, never>;
726
+ static ɵdir: i0.ɵɵDirectiveDeclaration<GraniteTitleDirective, "[graniteTitle]", ["graniteTitle"], {}, {}, never, never, false, never>;
727
+ }
728
+
729
+ declare class GraniteIconComponent implements OnChanges {
730
+ fontIcon: string;
731
+ _elementRef: ElementRef<any>;
732
+ private renderer;
733
+ private _previousFontIconClass;
734
+ constructor();
735
+ ngOnChanges(changes: SimpleChanges): void;
736
+ private _updateFontIcon;
737
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteIconComponent, never>;
738
+ static ɵcmp: i0.ɵɵComponentDeclaration<GraniteIconComponent, "granite-icon", never, { "fontIcon": { "alias": "fontIcon"; "required": false; }; }, {}, never, ["*"], false, never>;
739
+ }
740
+
741
+ declare class GraniteIconModule {
742
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteIconModule, never>;
743
+ static ɵmod: i0.ɵɵNgModuleDeclaration<GraniteIconModule, [typeof GraniteIconComponent], never, [typeof GraniteIconComponent]>;
744
+ static ɵinj: i0.ɵɵInjectorDeclaration<GraniteIconModule>;
745
+ }
746
+
747
+ declare class GraniteMenuModule {
748
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteMenuModule, never>;
749
+ static ɵmod: i0.ɵɵNgModuleDeclaration<GraniteMenuModule, [typeof GraniteMenuComponent, typeof GraniteMenuItemComponent, typeof GraniteMenuTriggerForDirective, typeof GraniteMenuTouchCloseComponent, typeof GraniteMenuTouchTitleItemComponent, typeof GraniteDividerDirective, typeof GraniteTitleDirective, typeof GraniteMenuCustomTemplateDirective], [typeof i2.CommonModule, typeof i10.OverlayModule, typeof i11.PortalModule, typeof GraniteIconModule], [typeof GraniteMenuComponent, typeof GraniteMenuItemComponent, typeof GraniteMenuTriggerForDirective, typeof GraniteMenuTouchCloseComponent, typeof GraniteMenuTouchTitleItemComponent, typeof GraniteDividerDirective, typeof GraniteTitleDirective, typeof GraniteMenuCustomTemplateDirective]>;
750
+ static ɵinj: i0.ɵɵInjectorDeclaration<GraniteMenuModule>;
751
+ }
752
+
753
+ /**
754
+ * Animations used by the `granite-menu` component, showing the desktop interface.
755
+ * @docs-private
756
+ */
757
+ declare const graniteMenuDesktopAnimations: {
758
+ /**
759
+ * This animation trigger controls the menu panel's entry and exit from the
760
+ * stage on desktop output devices.
761
+ */
762
+ readonly transformMenuDesktop: AnimationTriggerMetadata;
763
+ };
764
+
765
+ /**
766
+ * Animations used by the `granite-menu` component, showing the touch interface.
767
+ * @docs-private
768
+ */
769
+ declare const graniteMenuTouchAnimations: {
770
+ /**
771
+ * This animation trigger controls the menu panel's entry and exit from the
772
+ * stage on touch output devices.
773
+ */
774
+ readonly transformMenuTouch: AnimationTriggerMetadata;
775
+ /**
776
+ * This animation trigger controls the close button's entry and exit from the
777
+ * stage on touch output devices, using the same states as the menu panel.
778
+ */
779
+ readonly transformCloseButton: AnimationTriggerMetadata;
780
+ };
781
+
782
+ /**
783
+ * Test harness for menu component
784
+ *
785
+ * Stripped-down version of the Angular Material menu test harness (.../menu/menu-harness.ts)
786
+ * just to get things going.
787
+ */
788
+ declare class GraniteMenuHarness extends ComponentHarness {
789
+ /**
790
+ * The selector for the host element of a `MenuComponent` instance,
791
+ * i.e. the button element used to open the menu.
792
+ */
793
+ static hostSelector: string;
794
+ private _documentRootLocator;
795
+ /**
796
+ * Gets a `HarnessPredicate` that can be used to search for a `MenuHarness` that meets
797
+ * certain criteria.
798
+ * @param options Options for filtering which menu item instances are considered a match.
799
+ * @return a `HarnessPredicate` configured with the given options.
800
+ */
801
+ static with(options?: GraniteMenuHarnessFilters): HarnessPredicate<GraniteMenuHarness>;
802
+ /** Gets the text of the menu trigger */
803
+ getText(): Promise<string>;
804
+ /** Opens the menu, unless already open */
805
+ open(): Promise<void>;
806
+ /** Closes the menu, unless already closed */
807
+ close(): Promise<void>;
808
+ /** Whether the menu is open */
809
+ isOpen(): Promise<boolean>;
810
+ /**
811
+ * Gets a list of `GraniteMenuItemHarness` representing the items in the menu.
812
+ * @param filters Optionally filters which menu items are included.
813
+ */
814
+ getItems(filters?: Omit<GraniteMenuItemHarnessFilters, 'ancestor'>): Promise<GraniteMenuItemHarness[]>;
815
+ /** Gets the menu panel (popup) associated with the menu */
816
+ private _getMenuPanel;
817
+ /** Gets the id of the menu panel (popup) associated with this menu */
818
+ private _getPanelId;
819
+ }
820
+ declare class GraniteMenuItemHarness extends ComponentHarness {
821
+ /** The selector for the host element of a `MenuItemComponent` instance. */
822
+ static hostSelector: string;
823
+ /**
824
+ * Gets a `HarnessPredicate` that can be used to search for a `GraniteMenuItemHarness` that meets
825
+ * certain criteria.
826
+ * @param options Options for filtering which menu item instances are considered a match.
827
+ * @return a `HarnessPredicate` configured with the given options.
828
+ */
829
+ static with(options?: GraniteMenuItemHarnessFilters): HarnessPredicate<GraniteMenuItemHarness>;
830
+ /** Gets the text of the menu item. */
831
+ getText(): Promise<string>;
832
+ /** Whether this item has a submenu. */
833
+ hasSubmenu(): Promise<boolean>;
834
+ /** Gets the submenu associated with this menu item, or null if none. */
835
+ getSubmenu(): Promise<GraniteMenuHarness | null>;
836
+ /** Clicks the menu item. */
837
+ click(): Promise<void>;
838
+ }
839
+ /** A set of criteria that can be used to filter a list of `MenuHarness` instances. */
840
+ interface GraniteMenuHarnessFilters extends BaseHarnessFilters {
841
+ /** Only find instances whose text matches the given value. */
842
+ text?: string | RegExp;
843
+ }
844
+ /** A set of criteria that can be used to filter a list of `GraniteMenuItemHarness` instances. */
845
+ interface GraniteMenuItemHarnessFilters extends BaseHarnessFilters {
846
+ /** Only find instances whose text matches the given value. */
847
+ text?: string | RegExp;
848
+ }
849
+
850
+ type Position = 'before' | 'after';
851
+ type Layout = 'horizontal' | 'vertical';
852
+
853
+ declare class GraniteToggleSwitchComponent implements OnChanges {
854
+ id: string | null;
855
+ checked: boolean;
856
+ disabled: boolean;
857
+ readonly: boolean;
858
+ labelPosition: Position;
859
+ ariaLabel: string | null;
860
+ ariaLabelledby: string | null;
861
+ readonly valueChange: EventEmitter<boolean>;
862
+ readonly toggleChange: EventEmitter<void>;
863
+ readonly toggleBlur: EventEmitter<void>;
864
+ private _inputElement;
865
+ _positionBefore: boolean;
866
+ _toggleSwitchDisabled: boolean;
867
+ private _focusMonitor;
868
+ ngOnChanges(changes: SimpleChanges): void;
869
+ focus(origin?: FocusOrigin, options?: FocusOptions): void;
870
+ _onBlur(): void;
871
+ _toggleSwitchChange(): void;
872
+ _toggleSwitchClick(): void;
873
+ private _getInputElement;
874
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteToggleSwitchComponent, never>;
875
+ static ɵcmp: i0.ɵɵComponentDeclaration<GraniteToggleSwitchComponent, "granite-toggle-switch", ["graniteToggleSwitch"], { "id": { "alias": "id"; "required": false; }; "checked": { "alias": "checked"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "labelPosition": { "alias": "labelPosition"; "required": false; }; "ariaLabel": { "alias": "aria-label"; "required": false; }; "ariaLabelledby": { "alias": "aria-labelledby"; "required": false; }; }, { "valueChange": "valueChange"; "toggleChange": "toggleChange"; "toggleBlur": "toggleBlur"; }, never, ["*"], false, never>;
876
+ }
877
+
878
+ declare class GraniteToggleSwitchModule {
879
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteToggleSwitchModule, never>;
880
+ static ɵmod: i0.ɵɵNgModuleDeclaration<GraniteToggleSwitchModule, [typeof GraniteToggleSwitchComponent], never, [typeof GraniteToggleSwitchComponent]>;
881
+ static ɵinj: i0.ɵɵInjectorDeclaration<GraniteToggleSwitchModule>;
882
+ }
883
+
884
+ declare class GraniteRadioButtonComponent implements OnChanges, OnDestroy {
885
+ value: any;
886
+ id: string | null;
887
+ name: string;
888
+ checked: boolean;
889
+ required: boolean;
890
+ disabled: boolean;
891
+ readonly: boolean;
892
+ labelPosition: Position;
893
+ ariaLabel: string | null;
894
+ ariaLabelledby: string | null;
895
+ readonly radioChange: EventEmitter<any>;
896
+ readonly radioBlur: EventEmitter<void>;
897
+ private _inputElement;
898
+ _positionBefore: boolean;
899
+ _radioDisabled: boolean;
900
+ private _removeUniqueSelectionListenerFn;
901
+ private _focusMonitor;
902
+ private _radioDispatcher;
903
+ constructor();
904
+ ngOnChanges(changes: SimpleChanges): void;
905
+ ngOnDestroy(): void;
906
+ focus(origin?: FocusOrigin, options?: FocusOptions): void;
907
+ _radioChange(element: Partial<HTMLInputElement>): void;
908
+ _onBlur(): void;
909
+ private _getInputElement;
910
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteRadioButtonComponent, never>;
911
+ static ɵcmp: i0.ɵɵComponentDeclaration<GraniteRadioButtonComponent, "granite-radio-button", ["graniteRadioButton"], { "value": { "alias": "value"; "required": false; }; "id": { "alias": "id"; "required": false; }; "name": { "alias": "name"; "required": false; }; "checked": { "alias": "checked"; "required": false; }; "required": { "alias": "required"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "labelPosition": { "alias": "labelPosition"; "required": false; }; "ariaLabel": { "alias": "aria-label"; "required": false; }; "ariaLabelledby": { "alias": "aria-labelledby"; "required": false; }; }, { "radioChange": "radioChange"; "radioBlur": "radioBlur"; }, never, ["*"], false, never>;
912
+ }
913
+
914
+ declare abstract class GraniteRadioCheckboxBase {
915
+ layout: Layout;
916
+ ariaLabelledby: string | null;
917
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteRadioCheckboxBase, never>;
918
+ static ɵdir: i0.ɵɵDirectiveDeclaration<GraniteRadioCheckboxBase, never, never, { "layout": { "alias": "layout"; "required": false; }; "ariaLabelledby": { "alias": "aria-labelledby"; "required": false; }; }, {}, never, never, true, never>;
919
+ }
920
+
921
+ declare class GraniteRadioGroupComponent extends GraniteRadioCheckboxBase {
922
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteRadioGroupComponent, never>;
923
+ static ɵcmp: i0.ɵɵComponentDeclaration<GraniteRadioGroupComponent, "granite-radio-group", never, {}, {}, never, ["*"], false, never>;
924
+ }
925
+
926
+ declare class GraniteRadioButtonModule {
927
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteRadioButtonModule, never>;
928
+ static ɵmod: i0.ɵɵNgModuleDeclaration<GraniteRadioButtonModule, [typeof GraniteRadioButtonComponent, typeof GraniteRadioGroupComponent], never, [typeof GraniteRadioButtonComponent, typeof GraniteRadioGroupComponent]>;
929
+ static ɵinj: i0.ɵɵInjectorDeclaration<GraniteRadioButtonModule>;
930
+ }
931
+
932
+ declare class GraniteCheckboxComponent implements OnChanges {
933
+ id: string | null;
934
+ checked: boolean;
935
+ disabled: boolean;
936
+ readonly: boolean;
937
+ labelPosition: Position;
938
+ ariaLabel: string | null;
939
+ ariaLabelledby: string | null;
940
+ readonly valueChange: EventEmitter<boolean>;
941
+ readonly checkboxChange: EventEmitter<void>;
942
+ readonly checkboxBlur: EventEmitter<void>;
943
+ private _inputElement;
944
+ _positionBefore: boolean;
945
+ _checkboxDisabled: boolean;
946
+ private _focusMonitor;
947
+ ngOnChanges(changes: SimpleChanges): void;
948
+ focus(origin?: FocusOrigin, options?: FocusOptions): void;
949
+ _onBlur(): void;
950
+ _checkboxChange(): void;
951
+ _checkboxClick(): void;
952
+ private _getInputElement;
953
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteCheckboxComponent, never>;
954
+ static ɵcmp: i0.ɵɵComponentDeclaration<GraniteCheckboxComponent, "granite-checkbox", ["graniteCheckbox"], { "id": { "alias": "id"; "required": false; }; "checked": { "alias": "checked"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "labelPosition": { "alias": "labelPosition"; "required": false; }; "ariaLabel": { "alias": "aria-label"; "required": false; }; "ariaLabelledby": { "alias": "aria-labelledby"; "required": false; }; }, { "valueChange": "valueChange"; "checkboxChange": "checkboxChange"; "checkboxBlur": "checkboxBlur"; }, never, ["*"], false, never>;
955
+ }
956
+
957
+ declare class GraniteCheckboxGroupComponent extends GraniteRadioCheckboxBase {
958
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteCheckboxGroupComponent, never>;
959
+ static ɵcmp: i0.ɵɵComponentDeclaration<GraniteCheckboxGroupComponent, "granite-checkbox-group", never, {}, {}, never, ["*"], false, never>;
960
+ }
961
+
962
+ declare class GraniteCheckboxModule {
963
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteCheckboxModule, never>;
964
+ static ɵmod: i0.ɵɵNgModuleDeclaration<GraniteCheckboxModule, [typeof GraniteCheckboxComponent, typeof GraniteCheckboxGroupComponent], never, [typeof GraniteCheckboxComponent, typeof GraniteCheckboxGroupComponent]>;
965
+ static ɵinj: i0.ɵɵInjectorDeclaration<GraniteCheckboxModule>;
966
+ }
967
+
968
+ declare enum ButtonSelectors {
969
+ graniteButton = "granite-button",
970
+ granitePrimaryButton = "granite-primary-button",
971
+ graniteFlatButton = "granite-flat-button",
972
+ graniteToolbarButton = "granite-toolbar-button"
973
+ }
974
+ declare const ButtonComponentMixin: {
975
+ new (...args: any[]): {
976
+ [x: string]: unknown;
977
+ disabled: boolean;
978
+ ngOnChanges(changes: SimpleChanges): void;
979
+ };
980
+ } & (new (...args: any[]) => Record<string, unknown>);
981
+ declare class GraniteButtonComponent extends ButtonComponentMixin implements OnChanges {
982
+ toggled: boolean;
983
+ _buttonToggled: boolean;
984
+ protected _focusMonitor: FocusMonitor;
985
+ protected _elementRef: ElementRef<any>;
986
+ constructor();
987
+ ngOnChanges(changes: SimpleChanges): void;
988
+ focus(origin?: FocusOrigin, options?: FocusOptions): void;
989
+ private _getHostElement;
990
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteButtonComponent, never>;
991
+ static ɵcmp: i0.ɵɵComponentDeclaration<GraniteButtonComponent, "button[graniteButton], button[granitePrimaryButton], button[graniteFlatButton], button[graniteToolbarButton] ", ["graniteButton"], { "disabled": { "alias": "disabled"; "required": false; }; "toggled": { "alias": "toggled"; "required": false; }; }, {}, never, ["*"], false, never>;
992
+ }
993
+ declare class GraniteAnchorComponent extends GraniteButtonComponent implements OnChanges {
994
+ _anchorClick(event: Event): void;
995
+ ngOnChanges(changes: SimpleChanges): void;
996
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteAnchorComponent, never>;
997
+ static ɵcmp: i0.ɵɵComponentDeclaration<GraniteAnchorComponent, "a[graniteButton], a[graniteFlatButton]", ["graniteAnchor"], { "disabled": { "alias": "disabled"; "required": false; }; }, {}, never, ["*"], false, never>;
998
+ }
999
+
1000
+ declare class GraniteButtonModule {
1001
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteButtonModule, never>;
1002
+ static ɵmod: i0.ɵɵNgModuleDeclaration<GraniteButtonModule, [typeof GraniteButtonComponent, typeof GraniteAnchorComponent], never, [typeof GraniteButtonComponent, typeof GraniteAnchorComponent]>;
1003
+ static ɵinj: i0.ɵɵInjectorDeclaration<GraniteButtonModule>;
1004
+ }
1005
+
1006
+ declare class GraniteInputFieldComponent implements OnInit, OnChanges, AfterViewInit {
1007
+ id: string | null;
1008
+ name: string | null;
1009
+ type: string;
1010
+ value: string | number;
1011
+ required: boolean;
1012
+ readonly: boolean;
1013
+ invalid: boolean;
1014
+ disabled: boolean;
1015
+ placeholder: string;
1016
+ prefixicon: string;
1017
+ maxlength: number;
1018
+ countcharacters: boolean;
1019
+ ariaLabel: string | null;
1020
+ ariaLabelledby: string | null;
1021
+ readonly valueChange: EventEmitter<string>;
1022
+ private _inputElement;
1023
+ private _textareaElement;
1024
+ _supported: boolean;
1025
+ _empty: boolean;
1026
+ _passwordFieldIcon: string;
1027
+ _passwordField: boolean;
1028
+ _hasSuffixButton: boolean;
1029
+ _currentCharCount: number;
1030
+ private _passwordToggled;
1031
+ private _lastEmittedValue;
1032
+ private _focusMonitor;
1033
+ private _cdr;
1034
+ private _elementRef;
1035
+ ngOnInit(): void;
1036
+ ngOnChanges(changes: SimpleChanges): void;
1037
+ ngAfterViewInit(): void;
1038
+ focus(origin?: FocusOrigin, options?: FocusOptions): void;
1039
+ _togglePassword(): void;
1040
+ _onInput(event: Event): void;
1041
+ protected _validateType(): void;
1042
+ private _checkForSuffixButton;
1043
+ private _applyCharacterCount;
1044
+ private _getInputElement;
1045
+ private _getTextareaElement;
1046
+ private _emitValueIfChanged;
1047
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteInputFieldComponent, never>;
1048
+ static ɵcmp: i0.ɵɵComponentDeclaration<GraniteInputFieldComponent, "granite-input-field", ["graniteInputField"], { "id": { "alias": "id"; "required": false; }; "name": { "alias": "name"; "required": false; }; "type": { "alias": "type"; "required": false; }; "value": { "alias": "value"; "required": false; }; "required": { "alias": "required"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "invalid": { "alias": "invalid"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "prefixicon": { "alias": "prefixicon"; "required": false; }; "maxlength": { "alias": "maxlength"; "required": false; }; "countcharacters": { "alias": "countcharacters"; "required": false; }; "ariaLabel": { "alias": "aria-label"; "required": false; }; "ariaLabelledby": { "alias": "aria-labelledby"; "required": false; }; }, { "valueChange": "valueChange"; }, never, ["[graniteInputSuffixButton]"], false, never>;
1049
+ }
1050
+
1051
+ declare class GraniteInputFieldModule {
1052
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteInputFieldModule, never>;
1053
+ static ɵmod: i0.ɵɵNgModuleDeclaration<GraniteInputFieldModule, [typeof GraniteInputFieldComponent], [typeof i2.CommonModule, typeof GraniteIconModule, typeof GraniteButtonModule], [typeof GraniteInputFieldComponent]>;
1054
+ static ɵinj: i0.ɵɵInjectorDeclaration<GraniteInputFieldModule>;
1055
+ }
1056
+
1057
+ /** Event fired on an individual `granite-chip` element. */
1058
+ interface GraniteChipEvent {
1059
+ /** The chip the event was fired on. */
1060
+ chip: GraniteChipComponent;
1061
+ }
1062
+ /** Event object emitted by GraniteChip when selected or deselected. */
1063
+ declare class GraniteChipSelectionChangeEvent {
1064
+ /** Reference to the chip that emitted the event. */
1065
+ source: GraniteChipComponent;
1066
+ /** Whether the chip that emitted the event is selected. */
1067
+ selected: boolean;
1068
+ /** Whether the selection change was a result of a user interaction. */
1069
+ isUserInput: boolean;
1070
+ }
1071
+ declare class GraniteChipComponent implements FocusableOption, OnDestroy {
1072
+ /** ARIA role that should be applied to the chip. */
1073
+ role: string;
1074
+ ariaLabel: string | null;
1075
+ ariaLabelledby: string | null;
1076
+ /** Emitted when the chip is selected or deselected. */
1077
+ readonly selectionChange: EventEmitter<GraniteChipSelectionChangeEvent>;
1078
+ /** Emitted when a chip is to be removed. */
1079
+ readonly removed: EventEmitter<GraniteChipEvent>;
1080
+ /** Emitted when the chip is destroyed. */
1081
+ readonly destroyed: EventEmitter<GraniteChipEvent>;
1082
+ /** Emits when the chip is focused. */
1083
+ readonly chipFocus: EventEmitter<GraniteChipEvent>;
1084
+ /** Emits when the chip is blurred. */
1085
+ readonly chipBlur: EventEmitter<GraniteChipEvent>;
1086
+ /** Whether the chip is selected. */
1087
+ get selected(): boolean;
1088
+ set selected(value: boolean);
1089
+ /** The value of the chip. Defaults to the text content inside `<granite-chip>` tags. */
1090
+ get value(): any;
1091
+ set value(val: any);
1092
+ /**
1093
+ * Whether or not the chip is selectable. When a chip is not selectable,
1094
+ * changes to its selected state are always ignored. By default a chip is
1095
+ * selectable, and it becomes non-selectable if its parent chip list is
1096
+ * not selectable.
1097
+ */
1098
+ get selectable(): boolean;
1099
+ set selectable(value: boolean);
1100
+ /** Whether the chip is disabled. Also the individual chips are disabled when chip list is disabled */
1101
+ get disabled(): boolean;
1102
+ set disabled(value: boolean);
1103
+ /**
1104
+ * Whether the chip can be removed from the list
1105
+ */
1106
+ get removable(): boolean;
1107
+ set removable(value: boolean);
1108
+ /** Whether the chip is in an invalid state. */
1109
+ get invalid(): boolean;
1110
+ set invalid(value: boolean);
1111
+ _elementRef: ElementRef<any>;
1112
+ /** Whether the chip has focus. */
1113
+ _hasFocus: boolean;
1114
+ /** Whether the chip list is selectable */
1115
+ _chipListSelectable: boolean;
1116
+ /** Whether the chip list is in multi-selection mode. */
1117
+ _chipListMultiple: boolean;
1118
+ /** Whether the chip list as a whole is disabled. */
1119
+ _chipListDisabled: boolean;
1120
+ tabIndex: number;
1121
+ inputChip: boolean;
1122
+ protected _selected: boolean;
1123
+ protected _selectable: boolean;
1124
+ protected _disabled: boolean;
1125
+ protected _removable: boolean;
1126
+ protected _invalid: boolean;
1127
+ private _ngZone;
1128
+ private _changeDetectorRef;
1129
+ private _value;
1130
+ constructor();
1131
+ ngOnDestroy(): void;
1132
+ /** Selects the chip. */
1133
+ select(isUserInput?: boolean): void;
1134
+ /** Deselects the chip. */
1135
+ deselect(): void;
1136
+ /** Toggles the current selected state of this chip. */
1137
+ toggleSelected(isUserInput?: boolean): boolean;
1138
+ /** Allows for programmatic focusing of the chip unless it's disabled. */
1139
+ focus(): void;
1140
+ /**
1141
+ * Allows for programmatic removal of the chip.
1142
+ * Called by the GraniteChipList when the DELETE or BACKSPACE keys are pressed.
1143
+ * Informs any listeners of the removal request. Does not remove the chip from the DOM.
1144
+ */
1145
+ remove(): void;
1146
+ /** Handles click events on the chip. */
1147
+ _handleClick(event: Event): void;
1148
+ /** Handle custom key presses. */
1149
+ _handleKeydown(event: KeyboardEvent): void;
1150
+ _handleRemoveClick(event: Event): void;
1151
+ _blur(): void;
1152
+ private _dispatchSelectionChange;
1153
+ /** The ARIA selected applied to the chip. */
1154
+ get ariaSelected(): string | null;
1155
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteChipComponent, never>;
1156
+ static ɵcmp: i0.ɵɵComponentDeclaration<GraniteChipComponent, "granite-chip, granite-input-chip", ["graniteChip"], { "tabIndex": { "alias": "tabIndex"; "required": false; }; "role": { "alias": "role"; "required": false; }; "ariaLabel": { "alias": "aria-label"; "required": false; }; "ariaLabelledby": { "alias": "aria-labelledby"; "required": false; }; "selected": { "alias": "selected"; "required": false; }; "value": { "alias": "value"; "required": false; }; "selectable": { "alias": "selectable"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "removable": { "alias": "removable"; "required": false; }; "invalid": { "alias": "invalid"; "required": false; }; }, { "selectionChange": "selectionChange"; "removed": "removed"; "destroyed": "destroyed"; "chipFocus": "chipFocus"; "chipBlur": "chipBlur"; }, never, ["*"], false, never>;
1157
+ }
1158
+
1159
+ interface GraniteChipTextControl {
1160
+ /** Unique identifier for the text control. */
1161
+ id: string;
1162
+ /** The text control's placeholder text. */
1163
+ placeholder: string;
1164
+ /** Whether the text control has browser focus. */
1165
+ focused: boolean;
1166
+ /** Whether the text control is empty. */
1167
+ empty: boolean;
1168
+ /** Focuses the text control. */
1169
+ setFocus(options?: FocusOptions): void;
1170
+ }
1171
+ /** Represents an input event on a `graniteChipInput`. */
1172
+ interface GraniteChipInputEvent {
1173
+ /** The native `<input>` element that the event is being fired for. */
1174
+ input: HTMLInputElement;
1175
+ /** The value of the input. */
1176
+ value: string;
1177
+ /** Reference to the chip input that emitted the event. */
1178
+ chipInput: GraniteChipInputDirective;
1179
+ }
1180
+ declare class GraniteChipInputDirective implements GraniteChipTextControl, OnChanges, OnDestroy, AfterContentInit {
1181
+ /** Unique id for the input. */
1182
+ id: string;
1183
+ /** The input's placeholder text. */
1184
+ placeholder: string;
1185
+ /** Emitted when a chip is to be added. */
1186
+ readonly graniteChipInputTokenEnd: EventEmitter<GraniteChipInputEvent>;
1187
+ /** Register input for chip list */
1188
+ set graniteChipInputFor(value: GraniteChipListComponent);
1189
+ /**
1190
+ * The list of key codes that will trigger a chipEnd event.
1191
+ *
1192
+ * Defaults to `[ENTER]`.
1193
+ */
1194
+ graniteChipInputSeparatorKeyCodes: readonly number[] | ReadonlySet<number>;
1195
+ /**
1196
+ * Whether or not the chipEnd event will be emitted when the input is blurred.
1197
+ */
1198
+ get graniteChipInputAddOnBlur(): boolean;
1199
+ set graniteChipInputAddOnBlur(value: boolean);
1200
+ _addOnBlur: boolean;
1201
+ /**
1202
+ * Whether this is a required field, currently we use it only for setting aria-required.
1203
+ */
1204
+ get required(): boolean;
1205
+ set required(value: boolean);
1206
+ /** Whether the input is disabled. */
1207
+ get disabled(): boolean;
1208
+ set disabled(value: boolean);
1209
+ /** The native input element to which this directive is attached. */
1210
+ readonly inputElement: HTMLInputElement;
1211
+ _chipList: GraniteChipListComponent;
1212
+ focused: boolean;
1213
+ protected _elementRef: ElementRef<HTMLInputElement>;
1214
+ protected _required: boolean | undefined;
1215
+ /** Whether the input is empty. */
1216
+ get empty(): boolean;
1217
+ private _disabled;
1218
+ /** Used to prevent focus moving to chips while user is holding backspace */
1219
+ private _focusLastChipOnBackspace;
1220
+ constructor();
1221
+ ngOnChanges(): void;
1222
+ ngOnDestroy(): void;
1223
+ ngAfterContentInit(): void;
1224
+ /** Utility method to make host definition/tests more clear. */
1225
+ _keydown(event?: KeyboardEvent): void;
1226
+ /**
1227
+ * Pass events to the keyboard manager. Available here for tests.
1228
+ */
1229
+ _keyup(event: KeyboardEvent): void;
1230
+ /** Checks to see if the blur should emit the (chipEnd) event. */
1231
+ _blur(): void;
1232
+ _focus(): void;
1233
+ /** Checks to see if the (chipEnd) event needs to be emitted. */
1234
+ _emitChipEnd(event?: KeyboardEvent): void;
1235
+ _onInput(): void;
1236
+ /** Focuses the input (called from parent level). */
1237
+ setFocus(options?: FocusOptions): void;
1238
+ /** Clears the input */
1239
+ clear(): void;
1240
+ /** Checks whether a keycode is one of the configured separators. */
1241
+ private _isSeparatorKey;
1242
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteChipInputDirective, never>;
1243
+ static ɵdir: i0.ɵɵDirectiveDeclaration<GraniteChipInputDirective, "input[graniteChipInputFor]", ["graniteChipInput", "graniteChipInputFor"], { "id": { "alias": "id"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "graniteChipInputFor": { "alias": "graniteChipInputFor"; "required": false; }; "graniteChipInputSeparatorKeyCodes": { "alias": "graniteChipInputSeparatorKeyCodes"; "required": false; }; "graniteChipInputAddOnBlur": { "alias": "graniteChipInputAddOnBlur"; "required": false; }; "required": { "alias": "required"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; }, { "graniteChipInputTokenEnd": "graniteChipInputTokenEnd"; }, never, never, false, never>;
1244
+ }
1245
+
1246
+ declare abstract class GraniteChipListBase {
1247
+ _parentForm: NgForm;
1248
+ _parentFormGroup: FormGroupDirective;
1249
+ ngControl: NgControl;
1250
+ readonly stateChanges: EventEmitter<void>;
1251
+ constructor(_parentForm: NgForm, _parentFormGroup: FormGroupDirective, ngControl: NgControl);
1252
+ }
1253
+ declare class GraniteChipListComponent extends GraniteChipListBase implements ControlValueAccessor, AfterContentInit, DoCheck, OnInit, OnDestroy {
1254
+ ariaLabel: string | null;
1255
+ ariaLabelledby: string | null;
1256
+ ariaOrientation: 'horizontal' | 'vertical';
1257
+ /** The chips contained within this chip list. */
1258
+ chips: QueryList<GraniteChipComponent>;
1259
+ /** The ARIA role applied to the chip list. */
1260
+ get role(): string | null;
1261
+ set role(role: string | null);
1262
+ /** Whether the user should be allowed to select multiselect chips. */
1263
+ get multiselect(): boolean;
1264
+ set multiselect(value: boolean);
1265
+ /**
1266
+ * Whether the chip list is disabled.
1267
+ */
1268
+ get disabled(): boolean;
1269
+ set disabled(value: boolean);
1270
+ /**
1271
+ * Whether or not this chip list is selectable. When a chip list is not selectable,
1272
+ * the selected states for all the chips inside the chip list are always ignored.
1273
+ */
1274
+ get selectable(): boolean;
1275
+ set selectable(value: boolean);
1276
+ set tabindex(value: number);
1277
+ readonly controlType: string;
1278
+ /** Uid of the chip list */
1279
+ _uid: string;
1280
+ /** Tab index for the chip list. */
1281
+ _tabIndex: number;
1282
+ /**
1283
+ * User defined tab index.
1284
+ * When it is not null, use user defined tab index. Otherwise use _tabIndex
1285
+ */
1286
+ _userTabIndex: number | null;
1287
+ /** The FocusKeyManager which handles focus. */
1288
+ _keyManager: FocusKeyManager<GraniteChipComponent>;
1289
+ _selectionModel: SelectionModel<GraniteChipComponent>;
1290
+ protected _elementRef: ElementRef<HTMLElement>;
1291
+ /** The chip input to add more chips */
1292
+ protected _chipInput: GraniteChipTextControl;
1293
+ protected _disabled: boolean;
1294
+ protected _selectable: boolean;
1295
+ get focused(): boolean;
1296
+ get empty(): boolean;
1297
+ get chipSelectionChanges(): Observable<GraniteChipSelectionChangeEvent>;
1298
+ get chipFocusChanges(): Observable<GraniteChipEvent>;
1299
+ get chipBlurChanges(): Observable<GraniteChipEvent>;
1300
+ get chipRemoveChanges(): Observable<GraniteChipEvent>;
1301
+ private _changeDetectorRef;
1302
+ private _dir;
1303
+ /**
1304
+ * When a chip is destroyed, we store the index of the destroyed chip until the chips
1305
+ * query list notifies about the update. This is necessary because we cannot determine an
1306
+ * appropriate chip that should receive focus until the array of chips updated completely.
1307
+ */
1308
+ private _lastDestroyedChipIndex;
1309
+ /** Subject that emits when the component has been destroyed. */
1310
+ private readonly _destroyed;
1311
+ /** Subscription to focus changes in the chips. */
1312
+ private _chipFocusSubscription;
1313
+ /** Subscription to blur changes in the chips. */
1314
+ private _chipBlurSubscription;
1315
+ /** Subscription to selection changes in chips. */
1316
+ private _chipSelectionSubscription;
1317
+ /** Subscription to remove changes in chips. */
1318
+ private _chipRemoveSubscription;
1319
+ private _explicitRole?;
1320
+ private _multiple;
1321
+ constructor();
1322
+ /** Function when changed */
1323
+ _onChange: (value: any) => void;
1324
+ /** Function when changed */
1325
+ _onTouched: () => void;
1326
+ ngAfterContentInit(): void;
1327
+ ngOnInit(): void;
1328
+ ngDoCheck(): void;
1329
+ ngOnDestroy(): void;
1330
+ /** Associates an HTML input element with this chip list. */
1331
+ registerInput(inputElement: GraniteChipTextControl): void;
1332
+ writeValue(value: any): void;
1333
+ registerOnChange(fn: (value: any) => void): void;
1334
+ registerOnTouched(fn: () => void): void;
1335
+ setDisabledState(isDisabled: boolean): void;
1336
+ /**
1337
+ * Focus chip list when click on the container.
1338
+ */
1339
+ onContainerClick(event: MouseEvent): void;
1340
+ /**
1341
+ * Focuses the first non-disabled chip in this chip list, or the associated input when there
1342
+ * are no eligible chips.
1343
+ */
1344
+ focus(options?: FocusOptions): void;
1345
+ /** Attempt to focus an input if we have one. */
1346
+ _focusInput(options?: FocusOptions): void;
1347
+ /**
1348
+ * Pass events to the keyboard manager. Available here for tests.
1349
+ */
1350
+ _keydown(event: KeyboardEvent): void;
1351
+ /** When blurred, mark the field as touched when focus moved outside the chip list. */
1352
+ _blur(): void;
1353
+ /** Mark the field as touched */
1354
+ _markAsTouched(): void;
1355
+ /**
1356
+ * Removes the `tabindex` from the chip list and resets it back afterwards, allowing the
1357
+ * user to tab out of it. This prevents the list from capturing focus and redirecting
1358
+ * it back to the first chip, creating a focus trap, if it user tries to tab away.
1359
+ */
1360
+ _allowFocusEscape(): void;
1361
+ /**
1362
+ * Check the tab index as you should not be allowed to focus an empty list.
1363
+ */
1364
+ protected _updateTabIndex(): void;
1365
+ /**
1366
+ * If the amount of chips changed, we need to update the
1367
+ * key manager state and focus the next closest chip.
1368
+ */
1369
+ protected _updateFocusForDestroyedChips(): void;
1370
+ /**
1371
+ * Utility to ensure all indexes are valid.
1372
+ *
1373
+ * @param index The index to be checked.
1374
+ * @returns True if the index is valid for our list of chips.
1375
+ */
1376
+ private _isValidIndex;
1377
+ private _setSelectionByValue;
1378
+ /**
1379
+ * Finds and selects the chip based on its value.
1380
+ * @returns Chip that has the corresponding value.
1381
+ */
1382
+ private _selectValue;
1383
+ private _initializeSelection;
1384
+ /**
1385
+ * Deselects every chip in the list.
1386
+ * @param skip Chip that should not be deselected.
1387
+ */
1388
+ private _clearSelection;
1389
+ /**
1390
+ * Sorts the model values, ensuring that they keep the same
1391
+ * order that they have in the panel.
1392
+ */
1393
+ private _sortValues;
1394
+ private _compareWith;
1395
+ private _resetChips;
1396
+ private _dropSubscriptions;
1397
+ /** Listens to user-generated selection events on each chip. */
1398
+ private _listenToChipsSelection;
1399
+ /** Listens to user-generated selection events on each chip. */
1400
+ private _listenToChipsFocus;
1401
+ private _listenToChipsRemoved;
1402
+ /** Checks whether an event comes from inside a chip element. */
1403
+ private _originatesFromChip;
1404
+ /** Checks whether any of the chips is focused. */
1405
+ private _hasFocusedChip;
1406
+ /** Syncs the list's state with the individual chips. */
1407
+ private _syncChipsState;
1408
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteChipListComponent, never>;
1409
+ static ɵcmp: i0.ɵɵComponentDeclaration<GraniteChipListComponent, "granite-chip-list", ["graniteChipList"], { "ariaLabel": { "alias": "aria-label"; "required": false; }; "ariaLabelledby": { "alias": "aria-labelledby"; "required": false; }; "ariaOrientation": { "alias": "aria-orientation"; "required": false; }; "role": { "alias": "role"; "required": false; }; "multiselect": { "alias": "multiselect"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "selectable": { "alias": "selectable"; "required": false; }; "tabindex": { "alias": "tabindex"; "required": false; }; }, {}, ["chips"], ["*"], false, never>;
1410
+ }
1411
+
1412
+ declare class GraniteChipsModule {
1413
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteChipsModule, never>;
1414
+ static ɵmod: i0.ɵɵNgModuleDeclaration<GraniteChipsModule, [typeof GraniteChipListComponent, typeof GraniteChipComponent, typeof GraniteChipInputDirective], [typeof i2.CommonModule, typeof i5.FormsModule, typeof i5.ReactiveFormsModule, typeof GraniteIconModule], [typeof GraniteChipListComponent, typeof GraniteChipComponent, typeof GraniteChipInputDirective]>;
1415
+ static ɵinj: i0.ɵɵInjectorDeclaration<GraniteChipsModule>;
1416
+ }
1417
+
1418
+ declare class GraniteLabelComponent implements OnChanges {
1419
+ for: string | null;
1420
+ form: string | null;
1421
+ required: boolean;
1422
+ ngOnChanges(changes: SimpleChanges): void;
1423
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteLabelComponent, never>;
1424
+ static ɵcmp: i0.ɵɵComponentDeclaration<GraniteLabelComponent, "granite-label", ["graniteLabel"], { "for": { "alias": "for"; "required": false; }; "form": { "alias": "form"; "required": false; }; "required": { "alias": "required"; "required": false; }; }, {}, never, ["*"], false, never>;
1425
+ }
1426
+
1427
+ declare class GraniteLabelModule {
1428
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteLabelModule, never>;
1429
+ static ɵmod: i0.ɵɵNgModuleDeclaration<GraniteLabelModule, [typeof GraniteLabelComponent], [typeof i2.CommonModule], [typeof GraniteLabelComponent]>;
1430
+ static ɵinj: i0.ɵɵInjectorDeclaration<GraniteLabelModule>;
1431
+ }
1432
+
1433
+ type ContactDefaultStatuses = (typeof CONTACT_DEFAULT_STATUS)[keyof typeof CONTACT_DEFAULT_STATUS];
1434
+ declare const CONTACT_DEFAULT_STATUS: {
1435
+ readonly AVAILABLE: "Available";
1436
+ readonly AWAY: "Away";
1437
+ readonly BE_RIGHT_BACK: "BeRightBack";
1438
+ readonly BUSY: "Busy";
1439
+ readonly DO_NOT_DISTURB: "DoNotDisturb";
1440
+ readonly OFFLINE: "Offline";
1441
+ };
1442
+ interface Contact<T = unknown> {
1443
+ name: string;
1444
+ label: string;
1445
+ iconName?: string;
1446
+ status?: ContactDefaultStatuses | string;
1447
+ options?: ContactOption<T>[];
1448
+ disabled?: boolean;
1449
+ data?: T;
1450
+ }
1451
+ interface SelectedContact<T = unknown> {
1452
+ contact: ContactOption<T>;
1453
+ parent?: Contact<T>;
1454
+ }
1455
+ type ContactOption<T = unknown> = Omit<Contact<T>, 'options'>;
1456
+ interface Profile {
1457
+ firstName?: string;
1458
+ lastName?: string;
1459
+ name?: string;
1460
+ jobTitle?: string;
1461
+ avatar?: string;
1462
+ }
1463
+
1464
+ type PositionX$1 = 'before' | 'after';
1465
+ type PositionY$1 = 'above' | 'below';
1466
+ declare class ContactsTriggerDataComponent {
1467
+ templateRef: TemplateRef<unknown>;
1468
+ xPosition: PositionX$1;
1469
+ yPosition: PositionY$1;
1470
+ direction: Direction;
1471
+ /**
1472
+ * Used for locating the panel in tests and setting the aria-control attribute
1473
+ * for the contacts trigger.
1474
+ */
1475
+ readonly panelId: string;
1476
+ /** Client input device information */
1477
+ clientInput: ClientInputInterface;
1478
+ /** Client output device information */
1479
+ clientOutput: ClientOutputInterface;
1480
+ static ɵfac: i0.ɵɵFactoryDeclaration<ContactsTriggerDataComponent, never>;
1481
+ static ɵdir: i0.ɵɵDirectiveDeclaration<ContactsTriggerDataComponent, never, never, {}, {}, never, never, true, never>;
1482
+ }
1483
+
1484
+ declare class GraniteCustomStatusDirective {
1485
+ graniteCustomStatus: string;
1486
+ templateRef: TemplateRef<unknown>;
1487
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteCustomStatusDirective, never>;
1488
+ static ɵdir: i0.ɵɵDirectiveDeclaration<GraniteCustomStatusDirective, "[graniteCustomStatus]", never, { "graniteCustomStatus": { "alias": "graniteCustomStatus"; "required": false; }; }, {}, never, never, false, never>;
1489
+ }
1490
+
1491
+ interface ContactExtended extends Contact {
1492
+ statusTemplate?: TemplateRef<unknown>;
1493
+ }
1494
+ type ProfileData = Omit<Profile, 'name'> & {
1495
+ initials: string;
1496
+ };
1497
+
1498
+ declare class GraniteCustomProfileDirective {
1499
+ templateRef: TemplateRef<unknown>;
1500
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteCustomProfileDirective, never>;
1501
+ static ɵdir: i0.ɵɵDirectiveDeclaration<GraniteCustomProfileDirective, "[graniteCustomProfile]", never, {}, {}, never, never, false, never>;
1502
+ }
1503
+
1504
+ declare class GraniteContactsComponent extends ContactsTriggerDataComponent implements OnChanges, AfterContentChecked {
1505
+ contacts: Contact[];
1506
+ contactsClass: string;
1507
+ profile: Profile | unknown;
1508
+ profileClass: string;
1509
+ defaultShow: boolean;
1510
+ readonly selectedContact: EventEmitter<SelectedContact<unknown>>;
1511
+ _customStatuses: QueryList<GraniteCustomStatusDirective>;
1512
+ customProfileDirective: GraniteCustomProfileDirective;
1513
+ _contactsExtended: ContactExtended[];
1514
+ _profile: ProfileData;
1515
+ private cd;
1516
+ ngOnChanges(changes: SimpleChanges): void;
1517
+ ngAfterContentChecked(): void;
1518
+ onSelectedContact(contact: SelectedContact): void;
1519
+ private setProperCustomStatusTemplates;
1520
+ private applyTemplates;
1521
+ private createProfileData;
1522
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteContactsComponent, never>;
1523
+ static ɵcmp: i0.ɵɵComponentDeclaration<GraniteContactsComponent, "granite-contacts", ["graniteContacts"], { "contacts": { "alias": "contacts"; "required": false; }; "contactsClass": { "alias": "contactsClass"; "required": false; }; "profile": { "alias": "profile"; "required": false; }; "profileClass": { "alias": "profileClass"; "required": false; }; "defaultShow": { "alias": "defaultShow"; "required": false; }; }, { "selectedContact": "selectedContact"; }, ["customProfileDirective", "_customStatuses"], never, false, never>;
1524
+ }
1525
+
1526
+ declare class GraniteContactsProfileComponent {
1527
+ profile: ProfileData;
1528
+ profileClass: any;
1529
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteContactsProfileComponent, never>;
1530
+ static ɵcmp: i0.ɵɵComponentDeclaration<GraniteContactsProfileComponent, "granite-contacts-profile", never, { "profile": { "alias": "profile"; "required": false; }; "profileClass": { "alias": "profileClass"; "required": false; }; }, {}, never, never, false, never>;
1531
+ }
1532
+
1533
+ declare class GraniteContactItemComponent {
1534
+ contact: ContactExtended;
1535
+ readonly selectedContact: EventEmitter<SelectedContact<unknown>>;
1536
+ emitSelectedContact(selectedContact: SelectedContact): void;
1537
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteContactItemComponent, never>;
1538
+ static ɵcmp: i0.ɵɵComponentDeclaration<GraniteContactItemComponent, "granite-contact-item", never, { "contact": { "alias": "contact"; "required": false; }; }, { "selectedContact": "selectedContact"; }, never, never, false, never>;
1539
+ }
1540
+
1541
+ declare class ContactItemDefaultStatusComponent {
1542
+ status: ContactDefaultStatuses;
1543
+ CONTACT_STATUS: {
1544
+ readonly AVAILABLE: "Available";
1545
+ readonly AWAY: "Away";
1546
+ readonly BE_RIGHT_BACK: "BeRightBack";
1547
+ readonly BUSY: "Busy";
1548
+ readonly DO_NOT_DISTURB: "DoNotDisturb";
1549
+ readonly OFFLINE: "Offline";
1550
+ };
1551
+ static ɵfac: i0.ɵɵFactoryDeclaration<ContactItemDefaultStatusComponent, never>;
1552
+ static ɵcmp: i0.ɵɵComponentDeclaration<ContactItemDefaultStatusComponent, "granite-contact-item-default-status", never, { "status": { "alias": "status"; "required": false; }; }, {}, never, never, false, never>;
1553
+ }
1554
+
1555
+ declare class GraniteContactItemTitleComponent {
1556
+ contact: ContactExtended;
1557
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteContactItemTitleComponent, never>;
1558
+ static ɵcmp: i0.ɵɵComponentDeclaration<GraniteContactItemTitleComponent, "granite-contact-item-title", never, { "contact": { "alias": "contact"; "required": false; }; }, {}, never, never, false, never>;
1559
+ }
1560
+
1561
+ declare class GraniteContactsTriggerForDirective implements AfterContentInit, OnDestroy {
1562
+ /** References the contacts instance that the trigger is associated with. */
1563
+ contacts: GraniteContactsComponent;
1564
+ _clientInput: ClientInputInterface;
1565
+ _clientOutput: ClientOutputInterface;
1566
+ /** Whether the associated contacts is open */
1567
+ _isContactsOpen: boolean;
1568
+ private _overlay;
1569
+ private _element;
1570
+ private _viewContainerRef;
1571
+ private _outsideClickDispatcher;
1572
+ private _dir;
1573
+ private _focusMonitor;
1574
+ private _contactsCloseSubscription;
1575
+ private _portal;
1576
+ private _overlayRef;
1577
+ ngAfterContentInit(): void;
1578
+ ngOnDestroy(): void;
1579
+ isOpen(): boolean;
1580
+ openContacts(): void;
1581
+ /** Toggles the contacts between the open and closed states. */
1582
+ toggleContacts(): void;
1583
+ /** Close the associated contacts */
1584
+ closeContacts(): void;
1585
+ /** Handles key presses on the trigger. */
1586
+ _handleKeydown(event: KeyboardEvent): void;
1587
+ /** Handles click events on the trigger. */
1588
+ _handleClick(): void;
1589
+ /**
1590
+ * Restores focus to the element that was focused before the contacts was open.
1591
+ */
1592
+ _restoreFocus(origin?: FocusOrigin, options?: FocusOptions): void;
1593
+ /**
1594
+ * Returns strategy for positioning the overlay for desktop devices:
1595
+ */
1596
+ private _desktopPositionStrategy;
1597
+ /**
1598
+ * Sets the appropriate positions on a position strategy
1599
+ * so the overlay connects with the trigger correctly.
1600
+ * @param positionStrategy Strategy whose position to update.
1601
+ */
1602
+ private _setPosition;
1603
+ /**
1604
+ * Returns strategy for positioning the overlay depending on what type of
1605
+ * device the contacts is being shown on
1606
+ */
1607
+ private _positionStrategy;
1608
+ /**
1609
+ * Returns strategy for positioning the overlay for touch devices:
1610
+ * Place centered in the screen.
1611
+ */
1612
+ private _touchPositionStrategy;
1613
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteContactsTriggerForDirective, never>;
1614
+ static ɵdir: i0.ɵɵDirectiveDeclaration<GraniteContactsTriggerForDirective, "[graniteContactsTriggerFor]", never, { "contacts": { "alias": "graniteContactsTriggerFor"; "required": false; }; }, {}, never, never, false, never>;
1615
+ }
1616
+
1617
+ declare class GraniteCustomAvatarStatusDirective {
1618
+ graniteCustomAvatarStatus: string;
1619
+ templateRef: TemplateRef<unknown>;
1620
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteCustomAvatarStatusDirective, never>;
1621
+ static ɵdir: i0.ɵɵDirectiveDeclaration<GraniteCustomAvatarStatusDirective, "[graniteCustomAvatarStatus]", never, { "graniteCustomAvatarStatus": { "alias": "graniteCustomAvatarStatus"; "required": false; }; }, {}, never, never, false, never>;
1622
+ }
1623
+
1624
+ type AvatarDefaultStatuses = (typeof AVATAR_DEFAULT_STATUS)[keyof typeof AVATAR_DEFAULT_STATUS];
1625
+ declare const AVATAR_DEFAULT_STATUS: {
1626
+ readonly AVAILABLE: "Available";
1627
+ readonly DO_NOT_DISTURB: "DoNotDisturb";
1628
+ readonly DISABLED: "Disabled";
1629
+ readonly AWAY: "Away";
1630
+ };
1631
+
1632
+ declare class GraniteAvatarComponent extends ContactsTriggerDataComponent implements AfterContentChecked, OnChanges {
1633
+ name: string;
1634
+ firstName: string;
1635
+ lastName: string;
1636
+ avatar: string;
1637
+ status: AvatarDefaultStatuses;
1638
+ ariaLabel: string | null;
1639
+ _customStatusesQueryList: QueryList<GraniteCustomAvatarStatusDirective>;
1640
+ _customStatusDirectives: Record<string, TemplateRef<unknown>>;
1641
+ _nameInitials: string;
1642
+ avatarAriaLabel: string;
1643
+ private cd;
1644
+ ngOnChanges(changes: SimpleChanges): void;
1645
+ ngAfterContentChecked(): void;
1646
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteAvatarComponent, never>;
1647
+ static ɵcmp: i0.ɵɵComponentDeclaration<GraniteAvatarComponent, "granite-avatar", ["graniteAvatar"], { "name": { "alias": "name"; "required": false; }; "firstName": { "alias": "firstName"; "required": false; }; "lastName": { "alias": "lastName"; "required": false; }; "avatar": { "alias": "avatar"; "required": false; }; "status": { "alias": "status"; "required": false; }; "ariaLabel": { "alias": "aria-label"; "required": false; }; }, {}, ["_customStatusesQueryList"], never, false, never>;
1648
+ }
1649
+
1650
+ type StatusClasses = 'available' | 'do-not-disturb' | 'disabled' | 'away';
1651
+ declare class GraniteAvatarDefaultStatusComponent {
1652
+ status: AvatarDefaultStatuses;
1653
+ AVATAR_STATUS: {
1654
+ readonly AVAILABLE: "Available";
1655
+ readonly DO_NOT_DISTURB: "DoNotDisturb";
1656
+ readonly DISABLED: "Disabled";
1657
+ readonly AWAY: "Away";
1658
+ };
1659
+ get statusClass(): StatusClasses;
1660
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteAvatarDefaultStatusComponent, never>;
1661
+ static ɵcmp: i0.ɵɵComponentDeclaration<GraniteAvatarDefaultStatusComponent, "granite-avatar-default-status", never, { "status": { "alias": "status"; "required": false; }; }, {}, never, never, false, never>;
1662
+ }
1663
+
1664
+ declare class GraniteEmptyAvatarComponent {
1665
+ initials: string;
1666
+ ariaLabel: string | null;
1667
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteEmptyAvatarComponent, never>;
1668
+ static ɵcmp: i0.ɵɵComponentDeclaration<GraniteEmptyAvatarComponent, "granite-empty-avatar", never, { "initials": { "alias": "initials"; "required": false; }; "ariaLabel": { "alias": "aria-label"; "required": false; }; }, {}, never, never, false, never>;
1669
+ }
1670
+
1671
+ declare class GraniteAvatarModule {
1672
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteAvatarModule, never>;
1673
+ static ɵmod: i0.ɵɵNgModuleDeclaration<GraniteAvatarModule, [typeof GraniteAvatarComponent, typeof GraniteAvatarDefaultStatusComponent, typeof GraniteCustomAvatarStatusDirective, typeof GraniteEmptyAvatarComponent], [typeof i2.CommonModule], [typeof GraniteAvatarComponent, typeof GraniteAvatarDefaultStatusComponent, typeof GraniteCustomAvatarStatusDirective, typeof GraniteEmptyAvatarComponent]>;
1674
+ static ɵinj: i0.ɵɵInjectorDeclaration<GraniteAvatarModule>;
1675
+ }
1676
+
1677
+ declare class GraniteContactsModule {
1678
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteContactsModule, never>;
1679
+ static ɵmod: i0.ɵɵNgModuleDeclaration<GraniteContactsModule, [typeof GraniteContactsComponent, typeof GraniteContactsProfileComponent, typeof GraniteContactItemComponent, typeof ContactItemDefaultStatusComponent, typeof GraniteContactItemTitleComponent, typeof GraniteContactsTriggerForDirective, typeof GraniteCustomStatusDirective, typeof GraniteCustomProfileDirective], [typeof GraniteIconModule, typeof GraniteAvatarModule, typeof i2.CommonModule], [typeof GraniteContactsComponent, typeof GraniteContactsTriggerForDirective, typeof GraniteContactItemComponent, typeof GraniteCustomStatusDirective, typeof GraniteCustomProfileDirective]>;
1680
+ static ɵinj: i0.ɵɵInjectorDeclaration<GraniteContactsModule>;
1681
+ }
1682
+
1683
+ interface GraniteProgressInterface {
1684
+ value: number;
1685
+ label?: string;
1686
+ valueLabel?: string;
1687
+ backgroundColor?: string;
1688
+ foregroundColor?: string;
1689
+ }
1690
+ interface GraniteProgressLegendInterface {
1691
+ label: string;
1692
+ backgroundColor: string;
1693
+ }
1694
+
1695
+ declare class GraniteProgressBarComponent implements OnChanges {
1696
+ progressBarData: GraniteProgressInterface[];
1697
+ legendData: GraniteProgressLegendInterface[];
1698
+ showLabel: boolean;
1699
+ showLegend: boolean;
1700
+ DEFAULT_TOTAL: number;
1701
+ DEFAULT_BACKGROUND: string;
1702
+ DEFAULT_STACK_COLOR: string;
1703
+ DEFAULT_COLOR: string;
1704
+ total: number;
1705
+ legendItems: GraniteProgressLegendInterface[];
1706
+ getBackgroundColor(): string;
1707
+ getFontColor(color: string): string;
1708
+ getStackColor(color: string): string;
1709
+ getColorVar(color: string): string;
1710
+ getWidth(value: number): number;
1711
+ getStringOfWidth(width: number): string;
1712
+ checkStackTotal(): void;
1713
+ getStackTotal(): number;
1714
+ setLegendItems(): void;
1715
+ getLegendItems(data: GraniteProgressInterface[] | GraniteProgressLegendInterface[]): GraniteProgressLegendInterface[];
1716
+ ngOnChanges(changes: SimpleChanges): void;
1717
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteProgressBarComponent, never>;
1718
+ static ɵcmp: i0.ɵɵComponentDeclaration<GraniteProgressBarComponent, "granite-progress-bar", ["graniteProgressBar"], { "progressBarData": { "alias": "progressBarData"; "required": false; }; "legendData": { "alias": "legendData"; "required": false; }; "showLabel": { "alias": "showLabel"; "required": false; }; "showLegend": { "alias": "showLegend"; "required": false; }; }, {}, never, never, false, never>;
1719
+ }
1720
+
1721
+ type PositionX = 'before' | 'after';
1722
+ type PositionY = 'above' | 'below';
1723
+ declare class OverlayBaseComponent {
1724
+ templateRef: TemplateRef<any>;
1725
+ xPosition: PositionX;
1726
+ yPosition: PositionY;
1727
+ direction: Direction;
1728
+ clientInput: ClientInputInterface;
1729
+ clientOutput: ClientOutputInterface;
1730
+ static ɵfac: i0.ɵɵFactoryDeclaration<OverlayBaseComponent, never>;
1731
+ static ɵdir: i0.ɵɵDirectiveDeclaration<OverlayBaseComponent, never, never, {}, {}, never, never, true, never>;
1732
+ }
1733
+
1734
+ declare class LegendBaseComponent extends OverlayBaseComponent {
1735
+ readonly panelId: string;
1736
+ xPosition: PositionX;
1737
+ static ɵfac: i0.ɵɵFactoryDeclaration<LegendBaseComponent, never>;
1738
+ static ɵdir: i0.ɵɵDirectiveDeclaration<LegendBaseComponent, never, never, {}, {}, never, never, true, never>;
1739
+ }
1740
+
1741
+ declare class GraniteProgressBarLegendComponent extends LegendBaseComponent {
1742
+ legendItems: GraniteProgressLegendInterface[];
1743
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteProgressBarLegendComponent, never>;
1744
+ static ɵcmp: i0.ɵɵComponentDeclaration<GraniteProgressBarLegendComponent, "granite-progress-bar-legend", never, { "legendItems": { "alias": "legendItems"; "required": false; }; }, {}, never, never, false, never>;
1745
+ }
1746
+
1747
+ interface OverlayPositionConfig {
1748
+ originX?: 'start' | 'center' | 'end';
1749
+ originFallbackX?: 'start' | 'center' | 'end';
1750
+ originY?: 'top' | 'center' | 'bottom';
1751
+ originFallbackY?: 'top' | 'center' | 'bottom';
1752
+ overlayX?: 'start' | 'center' | 'end';
1753
+ overlayFallbackX?: 'start' | 'center' | 'end';
1754
+ overlayY?: 'top' | 'center' | 'bottom';
1755
+ overlayFallbackY?: 'top' | 'center' | 'bottom';
1756
+ offsetX?: number;
1757
+ offsetY?: number;
1758
+ }
1759
+
1760
+ declare class GraniteOverlayTriggerForBaseDirective implements OnDestroy {
1761
+ /** Client output device information */
1762
+ private _clientOutput;
1763
+ /** Client input device information */
1764
+ private _clientInput;
1765
+ private _dir;
1766
+ protected componentRef: OverlayBaseComponent;
1767
+ protected selector: string;
1768
+ protected offsetX: number;
1769
+ protected offsetY: number;
1770
+ private _overlayRef;
1771
+ private _overlay;
1772
+ private _element;
1773
+ private _viewContainerRef;
1774
+ private _overlayService;
1775
+ ngOnDestroy(): void;
1776
+ protected getPositionConfig(): OverlayPositionConfig;
1777
+ protected getPositionStrategy(): PositionStrategy;
1778
+ protected getScrollStrategy(): RepositionScrollStrategy | BlockScrollStrategy | CloseScrollStrategy;
1779
+ protected setScrollStrategy(scrollStrategy: 'reposition' | 'block' | 'close'): RepositionScrollStrategy | BlockScrollStrategy | CloseScrollStrategy;
1780
+ protected toggleOverlay(isOpen: boolean): boolean;
1781
+ protected onOutsideClick(): void;
1782
+ private _openOverlay;
1783
+ private _closeOverlay;
1784
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteOverlayTriggerForBaseDirective, never>;
1785
+ static ɵdir: i0.ɵɵDirectiveDeclaration<GraniteOverlayTriggerForBaseDirective, "[graniteOverlayTriggerForBase]", never, {}, {}, never, never, false, never>;
1786
+ }
1787
+
1788
+ declare class GraniteProgressBarLegendTriggerForDirective extends GraniteOverlayTriggerForBaseDirective {
1789
+ get legend(): OverlayBaseComponent;
1790
+ set legend(value: GraniteProgressBarLegendComponent);
1791
+ isLegendOpen: boolean;
1792
+ protected selector: string;
1793
+ protected offsetY: number;
1794
+ handleKeydown(event: KeyboardEvent): void;
1795
+ handleClick(): void;
1796
+ onOutsideClick(): void;
1797
+ getScrollStrategy(): RepositionScrollStrategy | BlockScrollStrategy | CloseScrollStrategy;
1798
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteProgressBarLegendTriggerForDirective, never>;
1799
+ static ɵdir: i0.ɵɵDirectiveDeclaration<GraniteProgressBarLegendTriggerForDirective, "[graniteProgressBarLegendTriggerFor]", never, { "legend": { "alias": "graniteProgressBarLegendTriggerFor"; "required": false; }; }, {}, never, never, false, never>;
1800
+ }
1801
+
1802
+ /**
1803
+ * Directive used to tell components and their sub components that client output
1804
+ * should be adapted for desktop devices like personal computers.
1805
+ */
1806
+ declare class ClientOutputDesktopDirective {
1807
+ static ɵfac: i0.ɵɵFactoryDeclaration<ClientOutputDesktopDirective, never>;
1808
+ static ɵdir: i0.ɵɵDirectiveDeclaration<ClientOutputDesktopDirective, "[graniteClientOutputDesktop]", never, {}, {}, never, never, false, never>;
1809
+ }
1810
+
1811
+ /**
1812
+ * Directive used to tell components and their sub components that client output
1813
+ * should be adapted for touch devices like mobiles and tablets.
1814
+ */
1815
+ declare class ClientOutputTouchDirective {
1816
+ static ɵfac: i0.ɵɵFactoryDeclaration<ClientOutputTouchDirective, never>;
1817
+ static ɵdir: i0.ɵɵDirectiveDeclaration<ClientOutputTouchDirective, "[graniteClientOutputTouch]", never, {}, {}, never, never, false, never>;
1818
+ }
1819
+
1820
+ /**
1821
+ * Directive used to tell components and their sub components that client input
1822
+ * should be adapted for desktop devices, like personal computers.
1823
+ */
1824
+ declare class ClientInputDesktopDirective {
1825
+ static ɵfac: i0.ɵɵFactoryDeclaration<ClientInputDesktopDirective, never>;
1826
+ static ɵdir: i0.ɵɵDirectiveDeclaration<ClientInputDesktopDirective, "[graniteClientInputDesktop]", never, {}, {}, never, never, false, never>;
1827
+ }
1828
+
1829
+ /**
1830
+ * Directive used to tell components and their sub components that client input
1831
+ * should be adapted for touch devices, like mobiles and tablets.
1832
+ */
1833
+ declare class ClientInputTouchDirective {
1834
+ static ɵfac: i0.ɵɵFactoryDeclaration<ClientInputTouchDirective, never>;
1835
+ static ɵdir: i0.ɵɵDirectiveDeclaration<ClientInputTouchDirective, "[graniteClientInputTouch]", never, {}, {}, never, never, false, never>;
1836
+ }
1837
+
1838
+ declare class GraniteHideOnOverflowDirective implements AfterViewInit, OnDestroy {
1839
+ resizeObserver: ResizeObserver;
1840
+ resizeSubscription: Subscription;
1841
+ mutationObserver: MutationObserver;
1842
+ private _elementRef;
1843
+ private renderer;
1844
+ ngAfterViewInit(): void;
1845
+ ngOnDestroy(): void;
1846
+ hideOnOverflow(): void;
1847
+ observeResize(): void;
1848
+ unObserveResize(): void;
1849
+ subscribeToResize(): void;
1850
+ observeContentChange(): void;
1851
+ unObserveContentChange(): void;
1852
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteHideOnOverflowDirective, never>;
1853
+ static ɵdir: i0.ɵɵDirectiveDeclaration<GraniteHideOnOverflowDirective, "[graniteHideOnOverflow]", ["graniteHideOnOverflow"], {}, {}, never, never, false, never>;
1854
+ }
1855
+
1856
+ declare class GraniteCoreModule {
1857
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteCoreModule, never>;
1858
+ static ɵmod: i0.ɵɵNgModuleDeclaration<GraniteCoreModule, [typeof ClientOutputDesktopDirective, typeof ClientOutputTouchDirective, typeof ClientInputDesktopDirective, typeof ClientInputTouchDirective, typeof GraniteHideOnOverflowDirective, typeof GraniteOverlayTriggerForBaseDirective], never, [typeof ClientOutputDesktopDirective, typeof ClientOutputTouchDirective, typeof ClientInputDesktopDirective, typeof ClientInputTouchDirective, typeof GraniteHideOnOverflowDirective]>;
1859
+ static ɵinj: i0.ɵɵInjectorDeclaration<GraniteCoreModule>;
1860
+ }
1861
+
1862
+ declare class GraniteProgressBarModule {
1863
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteProgressBarModule, never>;
1864
+ static ɵmod: i0.ɵɵNgModuleDeclaration<GraniteProgressBarModule, [typeof GraniteProgressBarComponent, typeof GraniteProgressBarLegendComponent, typeof GraniteProgressBarLegendTriggerForDirective], [typeof i2.CommonModule, typeof GraniteCoreModule, typeof i6.GraniteTooltipModule, typeof GraniteIconModule, typeof GraniteButtonModule], [typeof GraniteProgressBarComponent]>;
1865
+ static ɵinj: i0.ɵɵInjectorDeclaration<GraniteProgressBarModule>;
1866
+ }
1867
+
1868
+ type Constructor<T> = new (...args: any[]) => T;
1869
+ declare const disabledMixin: <T extends Constructor<Record<string, unknown>>>(Base?: T) => {
1870
+ new (...args: any[]): {
1871
+ [x: string]: unknown;
1872
+ disabled: boolean;
1873
+ ngOnChanges(changes: SimpleChanges): void;
1874
+ };
1875
+ } & T;
1876
+
1877
+ declare class GraniteTitlePipe implements PipeTransform {
1878
+ transform(value: string): string;
1879
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteTitlePipe, never>;
1880
+ static ɵpipe: i0.ɵɵPipeDeclaration<GraniteTitlePipe, "graniteTitle", false>;
1881
+ }
1882
+
1883
+ declare class PurePipesModule {
1884
+ static ɵfac: i0.ɵɵFactoryDeclaration<PurePipesModule, never>;
1885
+ static ɵmod: i0.ɵɵNgModuleDeclaration<PurePipesModule, [typeof GraniteTitlePipe], never, [typeof GraniteTitlePipe]>;
1886
+ static ɵinj: i0.ɵɵInjectorDeclaration<PurePipesModule>;
1887
+ }
1888
+
1889
+ declare class GraniteCardComponent {
1890
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteCardComponent, never>;
1891
+ static ɵcmp: i0.ɵɵComponentDeclaration<GraniteCardComponent, "granite-card", never, {}, {}, never, ["*"], false, never>;
1892
+ }
1893
+
1894
+ declare class GraniteCardListComponent {
1895
+ /**Present cards in vertically or horizontally */
1896
+ orientation: 'horizontal' | 'vertical';
1897
+ wrap: 'wrap' | 'nowrap';
1898
+ gap: 'small' | 'medium' | 'large';
1899
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteCardListComponent, never>;
1900
+ static ɵcmp: i0.ɵɵComponentDeclaration<GraniteCardListComponent, "granite-card-list", never, { "orientation": { "alias": "orientation"; "required": false; }; "wrap": { "alias": "wrap"; "required": false; }; "gap": { "alias": "gap"; "required": false; }; }, {}, never, ["*"], false, never>;
1901
+ }
1902
+
1903
+ declare class GraniteCardContentComponent {
1904
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteCardContentComponent, never>;
1905
+ static ɵcmp: i0.ɵɵComponentDeclaration<GraniteCardContentComponent, "granite-card-content", never, {}, {}, never, ["*"], false, never>;
1906
+ }
1907
+
1908
+ declare class GraniteCardHeaderComponent {
1909
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteCardHeaderComponent, never>;
1910
+ static ɵcmp: i0.ɵɵComponentDeclaration<GraniteCardHeaderComponent, "granite-card-header", never, {}, {}, never, ["granite-card-header-title", "granite-card-header-sub-title", "*"], false, never>;
1911
+ }
1912
+
1913
+ declare class GraniteCardActionsComponent {
1914
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteCardActionsComponent, never>;
1915
+ static ɵcmp: i0.ɵɵComponentDeclaration<GraniteCardActionsComponent, "granite-card-actions", never, {}, {}, never, ["*"], false, never>;
1916
+ }
1917
+
1918
+ declare class GraniteCardBodyComponent {
1919
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteCardBodyComponent, never>;
1920
+ static ɵcmp: i0.ɵɵComponentDeclaration<GraniteCardBodyComponent, "granite-card-body", never, {}, {}, never, ["*"], false, never>;
1921
+ }
1922
+
1923
+ declare class GraniteCardFooterComponent {
1924
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteCardFooterComponent, never>;
1925
+ static ɵcmp: i0.ɵɵComponentDeclaration<GraniteCardFooterComponent, "granite-card-footer", never, {}, {}, never, ["*"], false, never>;
1926
+ }
1927
+
1928
+ declare class GraniteCardAvatarComponent {
1929
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteCardAvatarComponent, never>;
1930
+ static ɵcmp: i0.ɵɵComponentDeclaration<GraniteCardAvatarComponent, "granite-card-avatar", never, {}, {}, never, ["*"], false, never>;
1931
+ }
1932
+
1933
+ declare class GraniteCardHeaderTitleComponent {
1934
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteCardHeaderTitleComponent, never>;
1935
+ static ɵcmp: i0.ɵɵComponentDeclaration<GraniteCardHeaderTitleComponent, "granite-card-header-title", never, {}, {}, never, ["*"], false, never>;
1936
+ }
1937
+
1938
+ declare class GraniteCardHeaderSubTitleComponent {
1939
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteCardHeaderSubTitleComponent, never>;
1940
+ static ɵcmp: i0.ɵɵComponentDeclaration<GraniteCardHeaderSubTitleComponent, "granite-card-header-sub-title", never, {}, {}, never, ["*"], false, never>;
1941
+ }
1942
+
1943
+ declare class GraniteCardListModule {
1944
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteCardListModule, never>;
1945
+ static ɵmod: i0.ɵɵNgModuleDeclaration<GraniteCardListModule, [typeof GraniteCardComponent, typeof GraniteCardListComponent, typeof GraniteCardContentComponent, typeof GraniteCardHeaderComponent, typeof GraniteCardActionsComponent, typeof GraniteCardBodyComponent, typeof GraniteCardFooterComponent, typeof GraniteCardAvatarComponent, typeof GraniteCardHeaderTitleComponent, typeof GraniteCardHeaderSubTitleComponent], [typeof i2.CommonModule, typeof i12.ScrollingModule], [typeof GraniteCardComponent, typeof GraniteCardListComponent, typeof GraniteCardContentComponent, typeof GraniteCardHeaderComponent, typeof GraniteCardBodyComponent, typeof GraniteCardActionsComponent, typeof GraniteCardFooterComponent, typeof GraniteCardAvatarComponent, typeof GraniteCardHeaderTitleComponent, typeof GraniteCardHeaderSubTitleComponent]>;
1946
+ static ɵinj: i0.ɵɵInjectorDeclaration<GraniteCardListModule>;
1947
+ }
1948
+
1949
+ declare class GraniteCollapsibleConditionalBodyDirective {
1950
+ template: TemplateRef<any>;
1951
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteCollapsibleConditionalBodyDirective, never>;
1952
+ static ɵdir: i0.ɵɵDirectiveDeclaration<GraniteCollapsibleConditionalBodyDirective, "[graniteCollapsibleGroupBody]", ["graniteCollapsibleGroupBody"], {}, {}, never, never, false, never>;
1953
+ }
1954
+
1955
+ declare class GraniteCollapsibleConditionalHeaderDirective {
1956
+ template: TemplateRef<any>;
1957
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteCollapsibleConditionalHeaderDirective, never>;
1958
+ static ɵdir: i0.ɵɵDirectiveDeclaration<GraniteCollapsibleConditionalHeaderDirective, "[graniteCollapsibleGroupHeader]", ["graniteCollapsibleGroupHeader"], {}, {}, never, never, false, never>;
1959
+ }
1960
+
1961
+ declare class GraniteCollapsibleGroupComponent {
1962
+ collapsed: boolean;
1963
+ id: string;
1964
+ arialabel: string | null;
1965
+ readonly collapsedChanged: EventEmitter<boolean>;
1966
+ conditionalBodyContentRef: GraniteCollapsibleConditionalBodyDirective;
1967
+ conditionalHeaderContentRef: GraniteCollapsibleConditionalHeaderDirective;
1968
+ toggleCollapsibleGroup(): void;
1969
+ _toogleCollapsing(event: KeyboardEvent): void;
1970
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteCollapsibleGroupComponent, never>;
1971
+ static ɵcmp: i0.ɵɵComponentDeclaration<GraniteCollapsibleGroupComponent, "granite-collapsible-group", never, { "collapsed": { "alias": "collapsed"; "required": false; }; "id": { "alias": "id"; "required": false; }; "arialabel": { "alias": "arialabel"; "required": false; }; }, { "collapsedChanged": "collapsedChanged"; }, ["conditionalBodyContentRef", "conditionalHeaderContentRef"], never, false, never>;
1972
+ }
1973
+
1974
+ declare class GraniteCollapsibleGroupModule {
1975
+ static ɵfac: i0.ɵɵFactoryDeclaration<GraniteCollapsibleGroupModule, never>;
1976
+ static ɵmod: i0.ɵɵNgModuleDeclaration<GraniteCollapsibleGroupModule, [typeof GraniteCollapsibleGroupComponent, typeof GraniteCollapsibleConditionalHeaderDirective, typeof GraniteCollapsibleConditionalBodyDirective], [typeof i2.CommonModule, typeof GraniteIconModule], [typeof GraniteCollapsibleGroupComponent, typeof GraniteCollapsibleConditionalHeaderDirective, typeof GraniteCollapsibleConditionalBodyDirective]>;
1977
+ static ɵinj: i0.ɵɵInjectorDeclaration<GraniteCollapsibleGroupModule>;
1978
+ }
1979
+
1980
+ export { AVATAR_DEFAULT_STATUS, ButtonSelectors, CONTACT_DEFAULT_STATUS, ClientInputDesktopDirective, ClientInputTouchDirective, ClientOutputDesktopDirective, ClientOutputTouchDirective, ContactItemDefaultStatusComponent, GRANITE_CLIENT_INPUT, GRANITE_CLIENT_OUTPUT, GraniteAnchorComponent, GraniteArrangeGridComponent, GraniteArrangeGridItemComponent, GraniteArrangeGridModule, GraniteArrangeGridOrientation, GraniteAvatarComponent, GraniteAvatarDefaultStatusComponent, GraniteAvatarModule, GraniteBadgeComponent, GraniteBadgeHarness, GraniteBadgeModule, GraniteButtonComponent, GraniteButtonModule, GraniteCardActionsComponent, GraniteCardAvatarComponent, GraniteCardBodyComponent, GraniteCardComponent, GraniteCardContentComponent, GraniteCardFooterComponent, GraniteCardHeaderComponent, GraniteCardHeaderSubTitleComponent, GraniteCardHeaderTitleComponent, GraniteCardListComponent, GraniteCardListModule, GraniteCheckboxComponent, GraniteCheckboxGroupComponent, GraniteCheckboxModule, GraniteChipComponent, GraniteChipInputDirective, GraniteChipListComponent, GraniteChipSelectionChangeEvent, GraniteChipsModule, GraniteCollapsibleConditionalBodyDirective, GraniteCollapsibleConditionalHeaderDirective, GraniteCollapsibleGroupComponent, GraniteCollapsibleGroupModule, GraniteContactItemComponent, GraniteContactItemTitleComponent, GraniteContactsComponent, GraniteContactsModule, GraniteContactsProfileComponent, GraniteContactsTriggerForDirective, GraniteCoreModule, GraniteCustomAvatarStatusDirective, GraniteCustomProfileDirective, GraniteCustomStatusDirective, GraniteDividerDirective, GraniteEmptyAvatarComponent, GraniteGridComponent, GraniteGridItemComponent, GraniteGridModule, GraniteHideOnOverflowDirective, GraniteIconComponent, GraniteIconModule, GraniteInputFieldComponent, GraniteInputFieldModule, GraniteLabelComponent, GraniteLabelModule, GraniteMenuComponent, GraniteMenuCustomTemplateDirective, GraniteMenuHarness, GraniteMenuItemComponent, GraniteMenuItemHarness, GraniteMenuModule, GraniteMenuTouchCloseComponent, GraniteMenuTouchTitleItemComponent, GraniteMenuTriggerForDirective, GraniteProgressBarComponent, GraniteProgressBarModule, GraniteRadioButtonComponent, GraniteRadioButtonModule, GraniteRadioGroupComponent, GraniteTitleDirective, GraniteTitlePipe, GraniteToggleSwitchComponent, GraniteToggleSwitchModule, PurePipesModule, deviceDesktop, deviceTouch, disabledMixin, graniteMenuDesktopAnimations, graniteMenuTouchAnimations };
1981
+ export type { AvatarDefaultStatuses, ClientInputInterface, ClientOutputInterface, Contact, ContactDefaultStatuses, ContactOption, GraniteBadgeHarnessFilters, GraniteChipEvent, GraniteChipInputEvent, GraniteChipTextControl, GraniteMenuHarnessFilters, GraniteMenuItemHarnessFilters, GraniteProgressInterface, GraniteProgressLegendInterface, InputDeviceTypes, Layout, OutputDeviceTypes, Position, Profile, SelectedContact, StatusClasses };