import * as _siemens_ix from '@siemens/ix'; import { ModalConfig as ModalConfig$1, ToastConfig as ToastConfig$1, MessageConfig, TypedEvent, ModalLoadingContext, ModalLoadingOptions, Components, TreeContext, UpdateCallback } from '@siemens/ix'; import * as i0 from '@angular/core'; import { TemplateRef, Type, ApplicationRef, ComponentFactoryResolver, Injector, AfterViewInit, OnDestroy, ElementRef, EventEmitter, NgZone, EmbeddedViewRef, ChangeDetectorRef, Provider } from '@angular/core'; import { ControlValueAccessor, NgControl } from '@angular/forms'; import { Subscription } from 'rxjs'; declare class IxActiveModal { private readonly modalData?; modalElement: HTMLElement; constructor(modalData?: TData | undefined); get data(): TData | undefined; /** * Close the active modal * * @param reason */ close(reason: TReason): void; /** * Dismiss the active modal * * @param reason */ dismiss(reason?: TReason): void; } type ModalConfig = Omit & { content: TemplateRef | Type; data?: TDATA; }; type ModalContext = { close: ((result: any) => void) | null; dismiss: ((result?: any) => void) | null; data?: T; }; declare class ModalService { private appRef; private componentFactoryResolver; private injector; constructor(appRef: ApplicationRef, componentFactoryResolver: ComponentFactoryResolver, injector: Injector); close(instance: { htmlElement: any; }, reason?: TReason): void; open(config: ModalConfig): Promise<_siemens_ix.ModalInstance>; private createContentByComponentType; private createContentByTemplateRef; private createModalInstance; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } type ToastConfig = Omit & { message?: string | TemplateRef; action?: TemplateRef; }; declare class ToastService { /** * Sets the position of the toast container */ setPosition(position: 'bottom-right' | 'top-right'): void; /** * Gets the position of the toast container */ getPosition(): "bottom-right" | "top-right"; /** * Display a toast based on the provided configuration */ show(config: ToastConfig): Promise<_siemens_ix.ShowToastResult>; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } declare class MessageService { showMessage(config: MessageConfig): Promise>; /** * Displays an info message modal with an info icon */ info(title: string, message: string, textOkay: string, textCancel?: string, payloadOkay?: any, payloadCancel?: any): Promise>; /** * Displays a warning message modal with a warning icon */ warning(title: string, message: string, textOkay: string, textCancel?: string, payloadOkay?: any, payloadCancel?: any): Promise>; /** * Displays an error message modal with an error icon */ error(title: string, message: string, textOkay: string, textCancel?: string, payloadOkay?: any, payloadCancel?: any): Promise>; /** * Displays a success message modal with a success icon */ success(title: string, message: string, textOkay: string, textCancel?: string, payloadOkay?: any, payloadCancel?: any): Promise>; /** * Displays a question message modal with a question icon */ question(title: string, message: string, textOkay: string, textCancel?: string, payloadOkay?: any, payloadCancel?: any): Promise>; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } declare class LoadingService { /** * Displays a loading modal with a message * @deprecated Use ModalLoadingOptions object form instead */ showModalLoading(message: string): ModalLoadingContext; /** * Displays a loading modal with a message */ showModalLoading(options: ModalLoadingOptions): ModalLoadingContext; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } declare class ValueAccessor implements ControlValueAccessor, AfterViewInit, OnDestroy { protected injector: Injector; protected elementRef: ElementRef; private readonly checkRequiredValidator; static readonly ANGULAR_CLASS_PREFIX = "ng-"; private onChange; private onTouched; protected lastValue: any; private statusChanges?; suppressClassMapping: boolean; constructor(injector: Injector, elementRef: ElementRef, checkRequiredValidator?: boolean); writeValue(value: any): void; handleValueChange(el: HTMLElement, value: any): void; _handleBlurEvent(el: any): void; registerOnChange(fn: (value: any) => void): void; registerOnTouched(fn: () => void): void; setDisabledState(isDisabled: boolean): void; ngOnDestroy(): void; ngAfterViewInit(): void; getAssignedNgControl(): NgControl | null; setClasses(): void; detourFormControlMethods(ngControl: NgControl, elementRef: ElementRef): void; mapNgToIxClassNames(element: ElementRef): Promise; getClasses(element: HTMLElement): string[]; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class BooleanValueAccessorBaseDirective extends ValueAccessor { constructor(injector: Injector, el: ElementRef); writeValue(value: boolean): void; handleChangeEvent(el: any): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class RadioValueAccessorBaseDirective extends ValueAccessor { private radioValueChangeSubscription?; constructor(injector: Injector, el: ElementRef); ngAfterViewInit(): void; private handleRadioGroupValueChange; writeValue(value: string): void; handleChangeEvent(el: any): void; ngOnDestroy(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class SelectValueAccessorBaseDirective extends ValueAccessor { constructor(injector: Injector, el: ElementRef); handleChangeEvent(el: any): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class TextValueAccessorBaseDirective extends ValueAccessor { constructor(injector: Injector, el: ElementRef); handleInputEvent(el: any): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class DateValueAccessorBaseDirective extends ValueAccessor { constructor(injector: Injector, el: ElementRef); handleInputEvent(el: any): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class TimeValueAccessorBaseDirective extends ValueAccessor { constructor(injector: Injector, el: ElementRef); handleInputEvent(el: any): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class DropdownTriggerBaseDirective { private readonly element; ixDropdownTrigger: any; constructor(element: ElementRef); protected ngOnChanges(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare interface TreeBaseDirective extends Omit { /** * Context changed */ contextChange: EventEmitter>; /** * Emits removed nodes */ nodeRemoved: EventEmitter>; } declare class TreeBaseDirective implements OnDestroy { protected z: NgZone; renderCache: Map>; set renderItem(template: TemplateRef); protected el: HTMLElement; onRemovedSubscription: Subscription; constructor(c: ChangeDetectorRef, r: ElementRef, z: NgZone, proxyOutputs: (instance: any, el: any, events: string[]) => void); ngOnDestroy(): void; generateItemRenderer(templateRef: TemplateRef): (_: number, itemData: any, __: any[], context: TreeContext, update: (callback: UpdateCallback) => void) => HTMLIxTreeItemElement; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare function createValueAccessorProvider(useExisting: any): Provider; export { BooleanValueAccessorBaseDirective, DateValueAccessorBaseDirective, DropdownTriggerBaseDirective, IxActiveModal, LoadingService, MessageService, ModalService, RadioValueAccessorBaseDirective, SelectValueAccessorBaseDirective, TextValueAccessorBaseDirective, TimeValueAccessorBaseDirective, ToastService, TreeBaseDirective, createValueAccessorProvider }; export type { ModalConfig, ModalContext, ToastConfig };