import * as i0 from '@angular/core'; import { OnInit, ElementRef, TemplateRef, EventEmitter, OnDestroy, PipeTransform, InjectionToken, AfterViewInit, Renderer2, ChangeDetectorRef, EnvironmentProviders, ModuleWithProviders } from '@angular/core'; import * as rxjs from 'rxjs'; import { Observable, BehaviorSubject } from 'rxjs'; import { FormGroupDirective, NgControl, ValidationErrors, AbstractControl, ControlValueAccessor, FormControl, FormGroup, Validator } from '@angular/forms'; import { ImageConverter } from '@bravobit/bb-foundation'; import { DomSanitizer } from '@angular/platform-browser'; import { Platform } from '@angular/cdk/platform'; import { Localize } from '@bravobit/bb-foundation/localize'; declare class BbFormSubmit implements OnInit { private _host; private _formDirective; submitStatus$: Observable; constructor(_host: ElementRef, _formDirective: FormGroupDirective); ngOnInit(): void; submit(): void; reset(): void; private get nativeElement(); private reactiveSubmitChanges; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class BbFormSubmitter { submitted$: BehaviorSubject; submit(): void; reset(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class BbFormControl { readonly labelId: string; ngControl: NgControl; label: string | TemplateRef | null; hint: string | TemplateRef | null; grouped: boolean; hideErrors: boolean; error: boolean; onErrorChange(error: { token: string; data?: any; } | null): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; static ngAcceptInputType_grouped: unknown; static ngAcceptInputType_hideErrors: unknown; } declare class BbInput { private _elementRef; private _formControl; constructor(_elementRef: ElementRef, _formControl: BbFormControl); focus(): any; get id(): string; get required(): boolean; set required(value: boolean); private _required; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; static ngAcceptInputType_required: unknown; } declare class BbImageUpload { private readonly _files; private readonly _platform; private readonly _renderer; width: number | null; height: number | null; mode: 'aspect-fit' | 'aspect-fill'; type: 'png' | 'jpg'; onDataUri: EventEmitter; onFile: EventEmitter; onClick(): Promise; private openFilePicker; private toDataUri; private toImage; private scaleImage; private getExportType; private getScaleByMode; private getFileName; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; static ngAcceptInputType_width: unknown; static ngAcceptInputType_height: unknown; } declare class BbExtraErrorControls implements OnDestroy { readonly changes: BehaviorSubject; private _subscription; set extraControls(controls: AbstractControl[]); ngOnDestroy(): void; private handle; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class BbFileDrop { disabled: boolean; onFileDropped: EventEmitter; hovered: boolean; onDrag(event: Event, isHovered: boolean): void; onDrop(event: Event): void; private setHovered; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; static ngAcceptInputType_disabled: unknown; } declare class ColorPickerDirective implements OnInit, OnDestroy { private readonly _overlay; private readonly _viewContainerRef; private readonly _elementRef; private readonly _environmentInjector; bbColorPicker: string; bbColorPickerShowAlpha: boolean; bbColorPickerDisabled: boolean; bbColorPickerChange: EventEmitter; private _overlayRef; private _subscription; showColorPicker(): void; hideColorPicker(): void; ngOnInit(): void; ngOnDestroy(): void; private attachColorPicker; private getPositionStrategy; private handleOverlayEvents; private createOverlay; private getPositions; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; static ngAcceptInputType_bbColorPickerShowAlpha: unknown; static ngAcceptInputType_bbColorPickerDisabled: unknown; } declare class BbFileSize implements PipeTransform { transform(value: number): string; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵpipe: i0.ɵɵPipeDeclaration; } declare class BbFileImage implements PipeTransform { private _platform; private _image; private _sanitizer; constructor(_platform: Platform, _image: ImageConverter, _sanitizer: DomSanitizer); transform(file: File): Promise; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵpipe: i0.ɵɵPipeDeclaration; } declare class BbFileDataUrl implements PipeTransform { private readonly _platform; private readonly _exif; private readonly _fileLoader; transform(input: File | Blob): Promise; private stripExif; private isFileLike; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵpipe: i0.ɵɵPipeDeclaration; } declare class BbRelativeTime implements PipeTransform { private _localeId; private _localize?; constructor(_localeId: string, _localize?: Localize); transform(value: string | number | Date): string | number | Date; private format; private formatString; private get locale(); private isValidDate; private parseAsDate; private isToday; private isYesterday; private isTomorrow; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵpipe: i0.ɵɵPipeDeclaration; } declare class BbDate implements PipeTransform { private readonly _localize; private readonly _localeId; transform(value: string | number | Date, format?: string): string; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵpipe: i0.ɵɵPipeDeclaration; } declare class BbSpinner { readonly color: i0.InputSignal; readonly alt: i0.InputSignal; readonly disabled: i0.InputSignalWithTransform; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class BbButton { protected elementRef: ElementRef; disabled: boolean; loading: boolean; constructor(elementRef: ElementRef); focus(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; static ngAcceptInputType_disabled: unknown; static ngAcceptInputType_loading: unknown; } declare class BbAnchor extends BbButton { protected elementRef: ElementRef; tabIndex: number | null; constructor(elementRef: ElementRef); stopDisabledEvents(event: Event): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare const ELEMENTS_CONFIG: InjectionToken; declare const ELEMENTS_ICONS: InjectionToken; declare const ELEMENTS_ERRORS: InjectionToken; type ElementsIcon = ElementsIconFont | ElementsIconImage | ElementsIconUrl | ElementsIconUnknown; type ElementsError = { [error: string]: (data?: any) => string | { token: string; data?: any; }; }; interface ElementsIconFont { namespace: string; className: string; uses: 'content' | 'data-attribute'; type: 'font'; } interface ElementsIconImage { namespace: string; name: string; src: string; type: 'image'; } interface ElementsIconUrl { namespace: string; url: string; type: 'url'; } interface ElementsIconUnknown { type: 'unknown'; } interface ElementsConfig { useMaterialDesignIcons?: boolean; iconFonts?: ElementsIcon[]; errors?: ElementsError; defaultDisplayUnit?: ElementsDisplayUnit; allowedFileTypes?: string[]; maxFileSize?: number; maxTotalFileSize?: number; avatarColorAlgorithm?: ElementsAvatarColorAlgorithm; } type ElementsDisplayUnit = 'rem' | 'px'; type ElementsAvatarColorAlgorithm = (value: string) => { color: string; background: string; } | null; declare class BbIcon { private _config?; private _registry?; private _src; state$: BehaviorSubject; alt: string | null; size: number; ariaHidden: boolean; unit: ElementsDisplayUnit | null; set src(newValue: string | null); get src(): string | null; get sizes(): string; constructor(_config?: ElementsConfig, _registry?: ElementsIcon[]); private convert; private findImageIcon; private findUrlIcon; private findFontIcon; private warn; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; static ngAcceptInputType_size: unknown; static ngAcceptInputType_ariaHidden: unknown; } declare class BbFormGroup { readonly grouped: i0.InputSignalWithTransform; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class BbFormError implements OnInit { private _form?; private _ngControl?; private _formSubmitter?; private _extraErrorControls?; private _errors?; readonly errorsMap: ElementsError; control: NgControl | null; errorChange: EventEmitter<{ token: string; data?: any; }>; error$: Observable<{ token: string; data?: any; } | null>; constructor(_form?: BbFormSubmit, _ngControl?: NgControl, _formSubmitter?: BbFormSubmitter, _extraErrorControls?: BbExtraErrorControls, _errors?: ElementsError[]); ngOnInit(): void; private setControl; private setError; private formatError; private submitStatusChanges; private getNativeFormSubmit; private getManualFormSubmit; private getErrors; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class BbCheckbox implements AfterViewInit, ControlValueAccessor { private _renderer; private _changeDetectorRef; readonly labelId: string; inputElementRef: ElementRef; checked: boolean; indeterminate: boolean; disabled: boolean; grouped: boolean; hideText: boolean; checkedChange: EventEmitter; indeterminateChange: EventEmitter; onTouchedCallback: () => void; onChangeCallback: (_: boolean | null) => void; constructor(_renderer: Renderer2, _changeDetectorRef: ChangeDetectorRef); ngAfterViewInit(): void; toggle(): void; writeValue(newValue: boolean): void; registerOnChange(method: (_: boolean | null) => void): void; registerOnTouched(method: () => void): void; setDisabledState(isDisabled: boolean): void; onClickEvent(event: Event): void; onChangeEvent(event: Event): void; private emitChangeEvent; private syncField; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; static ngAcceptInputType_checked: unknown; static ngAcceptInputType_indeterminate: unknown; static ngAcceptInputType_disabled: unknown; static ngAcceptInputType_grouped: unknown; static ngAcceptInputType_hideText: unknown; } declare class BbCheckboxGroup { readonly label: i0.InputSignal>; readonly required: i0.InputSignalWithTransform; readonly grouped: i0.InputSignalWithTransform; readonly inline: i0.InputSignalWithTransform; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class BbRadioGroup implements ControlValueAccessor { private _changeDetectorRef; label: string | TemplateRef | null; disabled: boolean; readonly: boolean; required: boolean; grouped: boolean; inline: boolean; hideErrors: boolean; valueChange: EventEmitter; get value(): T; set value(value: T); private _value; onTouchedCallback: () => void; onChangeCallback: (_: T | null) => void; error: boolean; constructor(_changeDetectorRef: ChangeDetectorRef); select(value: any): void; registerOnChange(fn: (newValue: T) => void): void; registerOnTouched(fn: () => void): void; setDisabledState(isDisabled: boolean): void; writeValue(newValue: T): void; onErrorChange(error: { token: string; data?: any; } | null): void; static ɵfac: i0.ɵɵFactoryDeclaration, never>; static ɵcmp: i0.ɵɵComponentDeclaration, "bb-radio-group", never, { "label": { "alias": "label"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "required": { "alias": "required"; "required": false; }; "grouped": { "alias": "grouped"; "required": false; }; "inline": { "alias": "inline"; "required": false; }; "hideErrors": { "alias": "hideErrors"; "required": false; }; "value": { "alias": "value"; "required": false; }; }, { "valueChange": "valueChange"; }, never, ["bb-radio-button"], true, never>; static ngAcceptInputType_disabled: unknown; static ngAcceptInputType_readonly: unknown; static ngAcceptInputType_required: unknown; static ngAcceptInputType_grouped: unknown; static ngAcceptInputType_inline: unknown; static ngAcceptInputType_hideErrors: unknown; } declare class BbRadioButton { private readonly _radioGroup?; value: T | null; hideText: boolean; set disabled(value: boolean); get disabled(): boolean; private _disabled; onClick(): void; onSpacePressed(): void; get selected(): boolean; static ɵfac: i0.ɵɵFactoryDeclaration, never>; static ɵcmp: i0.ɵɵComponentDeclaration, "bb-radio-button", never, { "value": { "alias": "value"; "required": false; }; "hideText": { "alias": "hideText"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; }, {}, never, ["*"], true, never>; static ngAcceptInputType_hideText: unknown; static ngAcceptInputType_disabled: unknown; } declare function avatarColorAlgorithm(value: string): { color: string; background: string; }; declare class BbAvatar { private readonly _config?; readonly size: i0.InputSignalWithTransform; readonly unit: i0.InputSignal; readonly src: i0.InputSignal; readonly title: i0.InputSignal; readonly color: i0.Signal; readonly backgroundColor: i0.Signal; readonly visualSize: i0.Signal; readonly fontSize: i0.Signal; readonly initials: i0.Signal; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } interface BbMultiFileControlItem { id: number; label: string; url: string; description?: string; } type BbMultiFileControlOpenEvent = { type: 'item'; item: BbMultiFileControlItem; } | { type: 'file'; file: File; }; declare class BbMultiFileControl implements ControlValueAccessor { private readonly _files; readonly labelId: string; readonly fileInputRef: i0.Signal>; readonly appearance: i0.InputSignal<"multiple" | "single">; readonly label: i0.InputSignal>; readonly hint: i0.InputSignal>; readonly accept: i0.InputSignal; readonly maxFileSize: i0.InputSignalWithTransform; readonly maxTotalFileSize: i0.InputSignalWithTransform; readonly grouped: i0.InputSignalWithTransform; readonly required: i0.InputSignalWithTransform; readonly hideErrors: i0.InputSignalWithTransform; readonly disabled: i0.ModelSignal; readonly items: i0.ModelSignal; delete: EventEmitter; open: EventEmitter; readonly value: i0.WritableSignal; readonly error: i0.WritableSignal; readonly showList: i0.Signal; onTouchedCallback: () => void; onChangeCallback: (_: File[] | null) => void; openItem(event: Event, item: BbMultiFileControlItem): void; downloadFile(event: Event, file: File): void; openFileDialog(): void; onFileChange(event: Event): void; deleteFile(index: number): void; writeValue(value: File[] | null): void; registerOnChange(method: (_: File[] | null) => void): void; registerOnTouched(method: () => void): void; setDisabledState(isDisabled: boolean): void; onErrorChange(error: { token: string; data?: any; } | null): void; validate(control: FormControl): { invalidFiles: Record; maxFileSize?: undefined; maxTotalFileSize?: undefined; } | { maxFileSize: { maxSize: string; }; invalidFiles?: undefined; maxTotalFileSize?: undefined; } | { maxTotalFileSize: { max: string; current: string; }; invalidFiles?: undefined; maxFileSize?: undefined; }; addFiles(files: File[]): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class BbFilePicker implements ControlValueAccessor { readonly labelId: string; fileInput: ElementRef; extraTemplate: TemplateRef; label: string | TemplateRef | null; hint: string | TemplateRef | null; accept: string; maxFileSize: number; showImages: boolean; grouped: boolean; required: boolean; disabled: boolean; hideErrors: boolean; error: boolean; value$: BehaviorSubject<{ file?: File; }>; onTouchedCallback: () => void; onChangeCallback: (_: File | null) => void; get value(): File | null; valueChange: EventEmitter; set value(value: File | null); onButtonPressed(file?: File): void; openFilePicker(): void; onFileChange(event: Event): void; writeValue(value: File | null): void; registerOnChange(method: (_: File | null) => void): void; registerOnTouched(method: () => void): void; setDisabledState(isDisabled: boolean): void; onErrorChange(error: { token: string; data?: any; } | null): void; validate({ value }: FormControl): { invalidFileType: boolean; maxFileSize?: undefined; } | { maxFileSize: { maxSize: string; }; invalidFileType?: undefined; }; saveFile(files: File[]): void; private getFilesFromEvent; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; static ngAcceptInputType_maxFileSize: unknown; static ngAcceptInputType_showImages: unknown; static ngAcceptInputType_grouped: unknown; static ngAcceptInputType_required: unknown; static ngAcceptInputType_disabled: unknown; static ngAcceptInputType_hideErrors: unknown; } declare class BbImagePicker implements ControlValueAccessor { private _converter; fileInput: ElementRef; label: string | null; placeholder: string | null; styleDimensions: { width: string; height: string; } | null; cropDimensions: { width: number; height: number; } | null; buttonClass: string | null; disabled: boolean; grouped: boolean; onTouchedCallback: () => void; onChangeCallback: (_: string | null) => void; private _value$; constructor(_converter: ImageConverter); get value(): string | null; valueChange: EventEmitter; set value(value: string | null); get image(): rxjs.Observable; onFileChange(event: any): Promise; openFilePicker(): void; writeValue(value: string | null): void; registerOnChange(method: (_: string | null) => void): void; registerOnTouched(method: () => void): void; setDisabledState(isDisabled: boolean): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; static ngAcceptInputType_disabled: unknown; static ngAcceptInputType_grouped: unknown; } declare class BbDatePicker implements ControlValueAccessor, OnInit, OnDestroy { private _changeDetectorRef; private _localizeId; readonly _yearRegex: RegExp; label: string | TemplateRef | null; hint: string | TemplateRef | null; dayPlaceholder: string | null; monthPlaceholder: string | null; yearPlaceholder: string | null; required: boolean; grouped: boolean; readonly: boolean; hideErrors: boolean; set disabled(value: boolean); get disabled(): boolean; set years(value: [string | number, string | number] | null); form: FormGroup; data$: Observable<{ days?: { label: string; value: number; }[]; months?: { label: string; value: number; }[]; years?: number[] | null; }>; years$: BehaviorSubject; get value(): string | null; set value(value: string | null); valueChange: EventEmitter; error: boolean; private _disabled; onTouchedCallback: () => void; onChangeCallback: (_: string | null) => void; private _subscription; constructor(_changeDetectorRef: ChangeDetectorRef, _localizeId: Observable); ngOnInit(): void; ngOnDestroy(): void; writeValue(value: string | null): void; registerOnChange(method: (_: string | null) => void): void; registerOnTouched(method: () => void): void; setDisabledState(isDisabled: boolean): void; onErrorChange(error: { token: string; data?: any; } | null): void; validate({ value }: FormControl): { invalidDate: boolean; }; private handleChanges; private getData; private verifyListData; private getDayData; private getMonthData; private composeForm; private parseDateStringInForm; private parseDateString; private parseYears; private formToDateString; private parseYearFormat; private getDaysInMonth; private isValidDateString; private padString; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; static ngAcceptInputType_required: unknown; static ngAcceptInputType_grouped: unknown; static ngAcceptInputType_readonly: unknown; static ngAcceptInputType_hideErrors: unknown; static ngAcceptInputType_disabled: unknown; } declare class BbColorSlider implements OnInit, OnDestroy { private readonly _elementRef; private readonly _document; xOffset: number; yOffset: number; size: number; xOffsetChange: EventEmitter; yOffsetChange: EventEmitter; private _subscription; get x(): number; get y(): number; ngOnInit(): void; ngOnDestroy(): void; private updateValue; private setOffsets; private calculate; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; static ngAcceptInputType_xOffset: unknown; static ngAcceptInputType_yOffset: unknown; static ngAcceptInputType_size: unknown; } declare class BbColorPicker { showAlpha: boolean; set color(value: string); get color(): string; colorChange: EventEmitter; hueOffset: number; saturationOffset: number; valueOffset: number; opacityOffset: number; private _color; setColor(): void; private setUIVariables; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; static ngAcceptInputType_showAlpha: unknown; } declare class BbImageControl implements ControlValueAccessor { private readonly _changeDetectorRef; readonly labelId: string; label: string | TemplateRef | null; hint: string | TemplateRef | null; buttonLabel: string | null; imageUrl: string | null; mode: 'aspect-fit' | 'aspect-fill'; type: 'png' | 'jpg'; cropWidth: number; visualMaxWidth: number | null; aspectRatio: number; grouped: boolean; required: boolean; disabled: boolean; hideErrors: boolean; delete: EventEmitter; value: File | null; error: boolean; onTouchedCallback: () => void; onChangeCallback: (_: File | null) => void; onFile(file: File): void; onDelete(): Promise; writeValue(value: File | null): void; registerOnChange(method: (_: File | null) => void): void; registerOnTouched(method: () => void): void; setDisabledState(isDisabled: boolean): void; onErrorChange(error: { token: string; data?: any; } | null): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; static ngAcceptInputType_cropWidth: unknown; static ngAcceptInputType_visualMaxWidth: unknown; static ngAcceptInputType_aspectRatio: unknown; static ngAcceptInputType_grouped: unknown; static ngAcceptInputType_required: unknown; static ngAcceptInputType_disabled: unknown; static ngAcceptInputType_hideErrors: unknown; } declare class BbPincodeControl implements OnInit, OnDestroy, ControlValueAccessor, Validator { private readonly _platform; private readonly _changeDetectorRef; htmlInputElementRef: ElementRef; label: string | TemplateRef | null; hint: string | TemplateRef | null; placeholder: string | null; autoFocus: boolean; required: boolean; readonly: boolean; grouped: boolean; digits: number; get value(): string | null; valueChange: EventEmitter; set value(value: string | null); data$: Observable<{ items?: { index: number; value: string; active: boolean; }[]; }>; control: FormControl; error: boolean; onTouchedCallback: () => void; onChangeCallback: (_: string | null) => void; private _subscription; ngOnInit(): void; ngOnDestroy(): void; writeValue(value: string | null): void; registerOnChange(method: (_: string | null) => void): void; registerOnTouched(method: () => void): void; setDisabledState(isDisabled: boolean): void; onErrorChange(error: { token: string; data?: any; } | null): void; validate(control: FormControl): { maxlength: { actualLength: any; requiredLength: number; }; minlength?: undefined; } | { minlength: { actualLength: any; requiredLength: number; }; maxlength?: undefined; }; focusEnd(): void; private setData; private handleValueChanges; private handleAutoFocus; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; static ngAcceptInputType_autoFocus: unknown; static ngAcceptInputType_required: unknown; static ngAcceptInputType_readonly: unknown; static ngAcceptInputType_grouped: unknown; static ngAcceptInputType_digits: unknown; } declare function injectAcceptString(): string; declare function injectMaxFileSize(): number; declare function injectMaxTotalFileSize(): number; declare function provideElementsConfig(config?: ElementsConfig): EnvironmentProviders; declare class ElementsModule { static forRoot(config?: ElementsConfig): ModuleWithProviders; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } export { BbAnchor, BbAvatar, BbButton, BbCheckbox, BbCheckboxGroup, BbColorPicker, BbColorSlider, BbDate, BbDatePicker, BbExtraErrorControls, BbFileDataUrl, BbFileDrop, BbFileImage, BbFilePicker, BbFileSize, BbFormControl, BbFormError, BbFormGroup, BbFormSubmit, BbFormSubmitter, BbIcon, BbImageControl, BbImagePicker, BbImageUpload, BbInput, BbMultiFileControl, BbPincodeControl, BbRadioButton, BbRadioGroup, BbRelativeTime, BbSpinner, ColorPickerDirective, ELEMENTS_CONFIG, ELEMENTS_ERRORS, ELEMENTS_ICONS, ElementsModule, avatarColorAlgorithm, injectAcceptString, injectMaxFileSize, injectMaxTotalFileSize, provideElementsConfig }; export type { BbMultiFileControlItem, BbMultiFileControlOpenEvent, ElementsAvatarColorAlgorithm, ElementsConfig, ElementsDisplayUnit, ElementsError, ElementsIcon, ElementsIconFont, ElementsIconImage, ElementsIconUnknown, ElementsIconUrl };