import * as i0 from '@angular/core'; import { OnChanges, ElementRef, Renderer2, PipeTransform, Provider, InjectionToken, Signal, Type, OnInit, InputSignalWithTransform, InputSignal, AfterViewInit, OnDestroy, OutputEmitterRef, TemplateRef, WritableSignal, ModelSignal, AfterViewChecked, AfterContentChecked } from '@angular/core'; import { HttpErrorResponse } from '@angular/common/http'; import { Observable, Subject } from 'rxjs'; import { FormControl, ValidatorFn, AbstractControl, ValidationErrors, ControlValueAccessor, Validator, FormGroup } from '@angular/forms'; import { ThemePalette } from '@angular/material/core'; import { MatDialogConfig } from '@angular/material/dialog'; import { MatDrawer } from '@angular/material/sidenav'; import { ComponentType as ComponentType$1 } from '@angular/cdk/portal'; import { OverlayRef, ComponentType, ConnectedPosition, CdkOverlayOrigin } from '@angular/cdk/overlay'; import { MatFormFieldAppearance } from '@angular/material/form-field'; import { BooleanInput, NumberInput } from '@angular/cdk/coercion'; import { TooltipPosition } from '@angular/material/tooltip'; import { AnimationPlayer, AnimationTriggerMetadata } from '@angular/animations'; import { MatSnackBarConfig, MatSnackBarRef } from '@angular/material/snack-bar'; import { CdkDragDrop } from '@angular/cdk/drag-drop'; import { MatInput } from '@angular/material/input'; import { ImageCroppedEvent } from 'ngx-image-cropper'; import { SafeHtml } from '@angular/platform-browser'; type IModsObject = Record; interface IBemConfig { separators: { el: string; mod: string; val: string; }; ignoreValues?: boolean; modCase?: string; } declare class BlockDirective implements OnChanges { #private; readonly element: ElementRef; readonly renderer: Renderer2; readonly name: string; private readonly elem; rtMod?: string | string[] | (string | false)[] | IModsObject; constructor(element: ElementRef, renderer: Renderer2, name: string, elem: string); ngOnChanges(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class ConcatClassesPipe implements PipeTransform { transform(classes: (C | C[])[]): string; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵpipe: i0.ɵɵPipeDeclaration; } declare class ElemDirective implements OnChanges { #private; readonly element: ElementRef; readonly renderer: Renderer2; readonly name: string; private readonly rtBlock; rtMod?: string | string[] | (string | false)[] | IModsObject; blockName: string; constructor(element: ElementRef, renderer: Renderer2, name: string, rtBlock: BlockDirective); ngOnChanges(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class ModDirective { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare enum STORAGE_TYPES_ENUM { LOCAL = "local", SESSION = "session", IN_MEMORY = "inMemory", CUSTOM = "custom" } type StorageType = STORAGE_TYPES_ENUM.LOCAL | STORAGE_TYPES_ENUM.SESSION | STORAGE_TYPES_ENUM.IN_MEMORY | STORAGE_TYPES_ENUM.CUSTOM; /** * A service that implements the `Storage` interface using an in-memory map. * This service provides a fallback storage solution when `localStorage` * or `sessionStorage` is not available, such as in server-side rendering (SSR) scenarios. * * @Injectable */ declare class InMemoryStorageService implements Storage { #private; /** * Returns the number of key-value pairs currently stored. * * @returns the number of items in storage * @public */ get length(): number; /** * Retrieves the value associated with the given key. * * @param key - The name of the key to retrieve the value for * @returns the value associated with the key, or `null` if the key does not exist * @public * @returns string | null */ getItem(key: string): string | null; /** * Adds or updates the key-value pair in the storage. * * @param key - The name of the key to create or update * @param data - The value to associate with the key * @public * @returns void */ setItem(key: string, data: string): void; /** * Retrieves the key at the specified index. * * @param index - The index of the key to retrieve * @returns the key at the specified index, or `null` if the index is out of bounds * @public * @returns string | null */ key(index: number): string | null; /** * Removes the key-value pair associated with the given key. * * @param key - The name of the key to remove * @public * @returns void */ removeItem(key: string): void; /** * Clears all key-value pairs from the storage. * * @public * @returns void */ clear(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } type Nullable = T | undefined | null; interface IStorageConverter { convertTo(data: any): string; convertFrom(data: any): Nullable; } interface IStorageConfig { ctx: Nullable; storageRef: Nullable; converter: Nullable; } declare class JsonConverter implements IStorageConverter { convertTo(data: Nullable): string; convertFrom(data: any): Nullable; } /** * Returns the set of dependency-injection providers * required to setup storages in an application. * * @usageNotes * * This function sets up the essential storage services needed for * working with `localStorage`, `sessionStorage`, and an in-memory storage solution. * It includes providers for each type of storage, ensuring that the appropriate * storage service is injected based on the platform or specific use case. * * The function is particularly useful in scenarios where the application may be * running on the server-side (SSR). In such cases, instead of using `localStorage` * and `sessionStorage`, which are only available in the browser, the `InMemoryStorageService` * can be used as a fallback, ensuring that the application still functions correctly. * * ```typescript * bootstrapApplication(RootComponent, { * providers: [ * provideRtStorage() * ] * }); * ``` * * @publicApi */ declare function provideRtStorage(): Provider[]; /** * Factory for creating or returning `localStorage`. * Returns `localStorage` global object if the application is running in a browser, * otherwise returns null. * * @returns localStorage or null */ declare function localStorageFactory(): Nullable; /** * Factory for creating or returning `sessionStorage`. * Returns `sessionStorage` global object if the application is running in a browser, * otherwise returns null. * * @returns sessionStorage or null */ declare function sessionStorageFactory(): Nullable; /** * Factory for creating `InMemoryStorageService`. * Returns a new instance of InMemoryStorageService. * * @returns a new instance of InMemoryStorageService */ declare function inMemoryStorageFactory(): Storage; /** * A service for managing data storage across different storage types, * including `localStorage`, `sessionStorage`, and an in-memory storage fallback. * The service supports custom storage types and data conversion through configurable converters. * * @Injectable */ declare class StorageService { #private; /** * Retrieves an item from the specified storage context. * * @param key - The key of the item to retrieve. * @param config - Optional configuration for the storage context and data conversion. * @returns The retrieved item, converted from storage if a converter is provided, or `null` if the item does not exist. */ getItem(key: string, config?: Partial): Nullable; /** * Stores an item in the specified storage context. * * @param key - The key to associate with the stored item. * @param data - The data to store, which will be converted if a converter is provided. * @param config - Optional configuration for the storage context and data conversion. */ setItem(key: string, data: any, config?: Partial): void; /** * Checks if a given key exists in the specified storage context. * * @param key - The key to check for. * @param ctx - The storage context to search in (local, session, or in-memory). * @returns `true` if the key exists, `false` otherwise. */ hasKey(key: string, ctx?: Nullable): boolean; /** * Executes callback functions based on whether a key exists in the specified storage context. * * @param key - The key to check for. * @param onHas - The callback to execute if the key exists. * @param onHasNot - The optional callback to execute if the key does not exist. * @param config - Optional configuration for the storage context and data conversion. */ onHasKey(key: string, onHas: (value: Nullable) => void, onHasNot?: () => void, config?: Partial): void; /** * Removes an item from the specified storage context. * * @param key - The key of the item to remove. * @param ctx - The storage context from which to remove the item. */ removeItem(key: string, ctx?: Nullable): void; /** * Clears all items from the specified storage context. * * @param ctx - The storage context to clear. */ clear(ctx?: Nullable): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } declare const CUSTOM_STORAGE: InjectionToken; declare const IN_MEMORY_STORAGE: InjectionToken; declare const LOCAL_STORAGE: InjectionToken; declare const SESSION_STORAGE: InjectionToken; interface MessageBusEvent { readonly type: T; } declare class MessageBus { #private; emit(event: MessageBusEvent): void; onEmit(): Observable>; ofType(eventType: M): Observable>; } interface IAction extends MessageBusEvent { readonly payload?: unknown; } interface IBaseStoreService { store: Signal; dispatch: (event: IAction) => void; onDispatch: (msg: MSG_TYPE) => Observable>; patchState: (callbackFn: (state: STATE_TYPE) => STATE_TYPE) => void; } declare abstract class BaseStoreService implements IBaseStoreService { #private; readonly store: Signal; dispatch(event: IAction): void; onDispatch(msg: MSG_TYPE): Observable>; patchState(callbackFn: (state: STATE_TYPE) => STATE_TYPE): void; protected unsubscribe(): void; } /** * @description Enumeration indicates the current state of a request. * @value ModelStatus.Success - The request was successful. * @value ModelStatus.Error - The request failed. * @value ModelStatus.Init - The request has not been made yet. * @value ModelStatus.Pending - The request is in progress. */ declare enum ModelStatus { Init = 0, Pending = 1, Success = 2, Error = 3 } interface ISetPropertiesConfig { showNotification?: boolean; } interface IBaseAsyncStoreService extends IBaseStoreService { /** @description Indicates status of the first request for getting list of Entities */ loading: Signal; /** @description Indicates status of the following requests for getting list of Entities */ fetching: Signal; /** @description Indicates status of all the requests for getting list of Entities */ pending: Signal; /** @description Indicates failure status of the first request for getting list of Entities */ requestStatus: Signal; /** @description Indicates statuses of the first request for getting list of Entities */ loadingStatus: Signal; /** @description Indicates statuses of the following requests for getting list of Entities */ fetchingStatus: Signal; /** @description Indicates statuses of create/update requests */ upsertStatus: Signal; /** @description Indicates statuses of delete requests */ deleteStatus: Signal; handleError(error: HttpErrorResponse): void; /** * @description Resets the next props to initial values: * - loading, * - fetching, * - upsertStatus, * - deleteStatus, * - requestStatus */ resetAsyncState(): void; startLoading(): void; setLoadingSuccess(): void; setLoadingFailure(error: HttpErrorResponse, config: ISetPropertiesConfig): Observable; setLoadingFailureVoid(error: HttpErrorResponse, config: ISetPropertiesConfig): void; startFetching(): void; setFetchingSuccess(): void; setFetchingFailure(error: HttpErrorResponse, config: ISetPropertiesConfig): Observable; setFetchingFailureVoid(error: HttpErrorResponse, config: ISetPropertiesConfig): void; /** @description Resets status for create/update requests */ resetUpsertStatus(): void; startUpsert(): void; setUpsertSuccess(): void; setUpsertFailure(error: HttpErrorResponse, config: ISetPropertiesConfig): Observable; setUpsertFailureVoid(error: HttpErrorResponse, config: ISetPropertiesConfig): void; /** @description Resets status for delete requests */ resetDeleteStatus(): void; startDelete(): void; setDeleteSuccess(): void; setDeleteFailure(error: HttpErrorResponse, config: ISetPropertiesConfig): Observable; setDeleteFailureVoid(error: HttpErrorResponse, config: ISetPropertiesConfig): void; } interface IDictionary { [Key: string]: T; } type Primitive = string | number | bigint | boolean | symbol | null | undefined; declare namespace IStateBase { interface Async { /** @description Indicates status of the first request for getting list of Entities */ loading: boolean; /** @description Indicates status of the following requests for getting list of Entities */ fetching: boolean; /** @description Indicates status of all the requests for getting list of Entities */ pending: boolean; requestStatus: ModelStatus; loadingStatus: ModelStatus; fetchingStatus: ModelStatus; /** @description Indicates statuses of create/update requests */ upsertStatus: ModelStatus; /** @description Indicates statuses of delete requests */ deleteStatus: ModelStatus; } interface List extends Async { entities: ENTITY_TYPE[]; pageModel: PAGE_MODEL_TYPE; sortModel: Nullable; searchTerm: Nullable; params: IDictionary; } } declare abstract class BaseAsyncStoreService extends BaseStoreService implements IBaseAsyncStoreService { readonly loading: Signal; readonly fetching: Signal; readonly pending: Signal; readonly requestStatus: Signal; readonly loadingStatus: Signal; readonly fetchingStatus: Signal; readonly upsertStatus: Signal; readonly deleteStatus: Signal; protected constructor(); handleError(error?: HttpErrorResponse, callbackFn?: () => void): void; resetAsyncState(): void; startLoading(): void; setLoadingSuccess(): void; setLoadingFailure(error: HttpErrorResponse, config?: ISetPropertiesConfig): Observable; setLoadingFailureVoid(error: HttpErrorResponse, config?: ISetPropertiesConfig): void; startFetching(): void; setFetchingSuccess(): void; setFetchingFailure(error: HttpErrorResponse, config?: ISetPropertiesConfig): Observable; setFetchingFailureVoid(error: HttpErrorResponse, config?: ISetPropertiesConfig): void; resetUpsertStatus(): void; startUpsert(): void; setUpsertSuccess(): void; setUpsertFailure(error: HttpErrorResponse, config?: ISetPropertiesConfig): Observable; setUpsertFailureVoid(error: HttpErrorResponse, config?: ISetPropertiesConfig): void; resetDeleteStatus(): void; startDelete(): void; setDeleteSuccess(): void; setDeleteFailure(error: HttpErrorResponse, config?: ISetPropertiesConfig): Observable; setDeleteFailureVoid(error: HttpErrorResponse, config?: ISetPropertiesConfig): void; } declare namespace BASE_INITIAL_STATE { const ASYNC: Readonly; } /** * Abstract StorageService class for interacting with a storage system. * Uses Observable to handle asynchronous operations. */ interface IIDBStorageServiceInterface { /** * Retrieves a value from storage by the given key. * @param key - The key to retrieve the value. * @returns An Observable that emits the value of type T or undefined if the key does not exist. */ get(key: string): Observable; /** * Saves a value in storage under the specified key. * @param key - The key to store the value under. * @param value - The value to be stored. * @returns An Observable that completes once the value is successfully saved. */ set(key: string, value: T): Observable; /** * Removes a value from storage by the specified key. * @param key - The key to remove the value from. * @returns An Observable that completes once the value is successfully removed. */ remove(key: string): Observable; } declare class IDBStorageService implements IIDBStorageServiceInterface { #private; constructor(); get(key: string): Observable; set(key: string, value: ENTITY_TYPE): Observable; remove(key: string): Observable; static ɵfac: i0.ɵɵFactoryDeclaration, never>; static ɵprov: i0.ɵɵInjectableDeclaration>; } /** * Factory for creating `IDBStorageService`. * Returns a new instance of IDBStorageService. * * @returns a new instance of IDBStorageService */ declare function iDBStorageFactory(): IDBStorageService>; /** * Returns the set of dependency-injection providers * required to set up storages in an application. * * @usageNotes * * This function sets up the essential storage services needed for * working with `idb storage` solution. * It includes providers for each type of storage, ensuring that the appropriate * storage service is injected based on the platform or specific use case. * * ```typescript * bootstrapApplication(RootComponent, { * providers: [ * provideRtIDBStorage() * ] * }); * ``` * * @publicApi */ declare function provideRtIDBStorage(): Provider[]; /** * Injection token for IDBStorageService. */ declare const IDB_STORAGE_SERVICE_TOKEN: InjectionToken>; interface Icon { value: string; style?: { [className: string]: string; }; } interface Select { value: Array>; label?: string; hint?: string; } interface NameValueType { name: N; value: V; } declare namespace IModal { interface Button { text: string; color?: ThemePalette; value: Nullable; appearance?: 'standard' | 'raised' | 'flat' | 'stroked' | 'fab' | 'mini-fab'; validateSelect?: boolean; assignSelectedValue?: boolean; style?: { [className: string]: string; }; className?: string; } interface Data { buttonsAlign: 'start' | 'center' | 'end'; buttons: Array>; component?: Type; icon?: Icon; title?: string; text?: string; confirmation?: string; input?: { label: string; placeholder: string; value: string; sample?: string; }; textArea?: { value: string; placeholder: string; }; select?: Select; } interface DataAnswer { value: T; message: string; } type ConfirmResponsePredicate = (answer: Nullable>) => boolean; interface ConfirmResponse { on(predicate: ConfirmResponsePredicate): Observable>>; onCancel(cancel?: ConfirmResponsePredicate): Observable>>; onConfirm(confirm?: ConfirmResponsePredicate): Observable>>; } } declare class RtuiModalComponent implements OnInit { #private; readonly data: IModal.Data; control: FormControl | undefined; selectControl: FormControl | undefined; readonly bemBlock: string; get hostClasses(): Record; ngOnInit(): void; onClose(button: IModal.Button): void; static ɵfac: i0.ɵɵFactoryDeclaration, never>; static ɵcmp: i0.ɵɵComponentDeclaration, "rtui-modal", never, {}, {}, never, never, true, never>; } declare class RtModalService { #private; confirm(data: IModal.Data, config?: MatDialogConfig): Observable>>; with(data: IModal.Data, config?: MatDialogConfig): IModal.ConfirmResponse; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } /** * Date formatting and parsing utilities (replacement for date-fns) * * Supported format tokens: * - yyyy: 4-digit year (2024) * - yy: 2-digit year (24) * - MM: 2-digit month (01-12) * - M: month (1-12) * - dd: 2-digit day (01-31) * - d: day (1-31) * - HH: 2-digit hour 24h (00-23) * - H: hour 24h (0-23) * - hh: 2-digit hour 12h (01-12) * - h: hour 12h (1-12) * - mm: 2-digit minutes (00-59) * - m: minutes (0-59) * - ss: 2-digit seconds (00-59) * - s: seconds (0-59) * - SSS: milliseconds (000-999) * - a: AM/PM * - EEEE: full weekday name (Monday) * - EEE: short weekday name (Mon) * - MMMM: full month name (January) * - MMM: short month name (Jan) */ /** * Checks if a value is a valid Date object */ declare function isDate(value: unknown): value is Date; /** * Formats a Date object according to the specified format string * * @param date - The date to format * @param formatStr - The format string (e.g., 'dd.MM.yyyy', 'yyyy-MM-dd HH:mm:ss') * @returns Formatted date string * * @example * formatDate(new Date(2024, 0, 15), 'dd.MM.yyyy') // '15.01.2024' * formatDate(new Date(2024, 0, 15, 14, 30), 'yyyy-MM-dd HH:mm') // '2024-01-15 14:30' */ declare function formatDate(date: Date, formatStr: string): string; /** * Parses an ISO 8601 date string into a Date object * * @param dateString - ISO date string (e.g., '2024-01-15', '2024-01-15T14:30:00.000Z') * @returns Date object or Invalid Date if parsing fails * * @example * parseISO('2024-01-15') // Date object for Jan 15, 2024 * parseISO('2024-01-15T14:30:00.000Z') // Date object with time */ declare function parseISO(dateString: string): Date; /** * Parses a date string according to the specified format * * @param dateString - The date string to parse * @param formatStr - The format string describing the input * @param referenceDate - Reference date for missing parts (defaults to current date) * @returns Date object or Invalid Date if parsing fails * * @example * parseDate('15.01.2024', 'dd.MM.yyyy') // Date object for Jan 15, 2024 * parseDate('2024/01/15 14:30', 'yyyy/MM/dd HH:mm') // Date with time */ declare function parseDate(dateString: string, formatStr: string, referenceDate?: Date): Date; declare function dateStringToDate(date: string | Date): Date; declare function isDateValid(date?: Date): boolean; /** * Indicates if the arguments are equal * * @param f first parameter to compare * @param s second parameter to compare */ declare function isEqual(f: T, s: T): boolean; /** * Indicates if the content of two arrays is identical * * @param f first array * @param s second array */ declare function areArraysEqual(f: T[], s: T[]): boolean; /** * Indicates if the content of two objects is identical * * @param f first object * @param s second object */ declare function areObjectsEqual(f: T, s: T): boolean; /** * Checks whether two arrays are equal regardless of the order of their elements. * Supports deep comparison of nested arrays and objects. * * @template T The type of elements in the arrays * @param f first array * @param s second array * @returns True if the arrays contain the same elements in any order, false otherwise */ declare function areArraysEqualUnordered(f: T[], s: T[]): boolean; declare function isNumber(value: T | number | unknown | undefined): value is number; declare function isRecord(value: unknown): value is Record; declare function isString(value: T | null | undefined | unknown): value is string; declare function initToday(): Date; declare function isToday(date: Date): boolean; /** Makes shallow copy of passed object */ declare function removeFieldFromObject(obj: T, key: K): Omit; type ComparatorType = (aa: T, bb: T) => number; /** * Allow to compare two values by provided comparator * * @param a - T * @param b - T * @param comparator - ComparatorType */ declare function safeCompare(a: T, b: T, comparator: ComparatorType): number; /** * Allow to safely compare two string values * * @param a string * @param b string */ declare function safeStrCompare(a: string, b: string): number; /** * Allow to safely compare two number values * * @param a number * @param b number */ declare function safeNumCompare(a: number, b: number): number; /** * Allow composing comparison chain of several comparators * that delegate comparison by the chain to the next comparators if current comparator returns 0 * * @param comparators - Array<() => number> */ declare function safeComparatorPipe(...comparators: Array<() => number>): number; declare const sortByAlphabet: (a: T, b: T, field: keyof T) => number; declare const sortByDate: (a: { [field: string]: any; }, b: { [field: string]: any; }, field: string) => number; declare function stringifyHttpLikeParams(params: T): { [param: string]: string | string[]; }; declare function transformArrayInput(array: unknown): T[]; declare function transformStringInput(value: unknown): string; declare function checkIsEntityInArrayByKey, KEY extends Extract>(selectedEntities: ENTITY[], entity: ENTITY, keyExp: KEY): boolean; declare function isNil(entity: T | null | undefined): entity is null | undefined; declare function emptyToDash(value: T | null | undefined): T | string; /** * Check if the email is valid * @param email */ declare function isEmail(email: any): boolean; declare function isEmpty(value: unknown): boolean; declare function isEmptyString(value: string): boolean; declare function isEmptyArray(value: T[]): boolean; declare function isEmptyObject(value: Record): boolean; declare function debounce(timeout?: number): MethodDecorator; declare enum HAS_OWN_SCOPE_ENUM { ANY = "any", OWN = "own", INHERITED = "inherited" } type IHasScopeType = HAS_OWN_SCOPE_ENUM.ANY | HAS_OWN_SCOPE_ENUM.OWN | HAS_OWN_SCOPE_ENUM.INHERITED; /** * Safe property existence check with configurable scope. * * - Returns `false` for `null`/`undefined`. * - Boxes primitives (e.g., strings, numbers) so prototype checks work. * - Does **not** invoke getters; relies on `in` and an own-check helper. * - Uses `Object.hasOwn` when available; **falls back** to * `Object.prototype.hasOwnProperty.call` on older runtimes. * * @param obj {unknown} - Value to check. `null`/`undefined` short-circuit to `false`. * @param key {PropertyKey} - Property key (string | number | symbol). * @param scope {IHasScopeType} - Check mode: `'any'` (default), `'own'`, or `'inherited'`. * * @returns `true` if the property exists under the selected scope. * * @example * hasPropertyInChain({ a: 1 }, 'a'); // true (ANY) * hasPropertyInChain(Object.create({ a: 1 }), 'a', HAS_OWN_SCOPE_ENUM.INHERITED); // true * hasPropertyInChain({ a: 1 }, 'b', HAS_OWN_SCOPE_ENUM.OWN); // false */ declare function hasPropertyInChain(obj: unknown, key: PropertyKey, scope?: IHasScopeType): boolean; type AnyObject = Record; type EmptyObject = Record; type IntersectionType = keyof T & keyof M; type Modify = Omit & R; type PartialOmit = Omit & Partial; interface IMapper { mapFrom(raw: I): M; mapTo?(model: M): I; } /** Makes selected props from a record optional */ type Optional = Pick, K> & Omit; /** Get the union type of all the values in an object, array or array-like type */ type ValuesType | ArrayLike | Record> = T extends ReadonlyArray ? T[number] : T extends ArrayLike ? T[number] : T extends object ? T[keyof T] : never; declare class TypeCastHelper { getAsString(data: unknown, defaultValue?: string): string; getAsNumber(data: unknown, defaultValue?: number): number; getAsBoolean(data: unknown): boolean; getAsNull(data: T, handler?: (data: T) => R): T | R | null; getAsType(value: unknown, type: NonNullable): any; getAsTypedArray(data: unknown[], cb: (item: unknown) => T, showError?: boolean): T[]; getAsDate(date: string | number | Date, asString?: boolean, parseFormatOptions?: string, formatOptions?: string): Date | string; } interface IBaseMapper { typeCast: TypeCastHelper; mapTo?: (model: M, ...args: any[]) => any; mapFrom?: (data: any, ...args: any[]) => M; mapToArray?: (models: M[], ...args: any[]) => any; mapFromArray?: (data: any[], ...args: any[]) => M[]; } type Scriptable = T | ((ctx: TContext, options: AnyObject) => T | undefined); type ScriptableOptions = { [P in keyof T]: Scriptable; }; type ScriptableAndScriptableOptions = Scriptable | ScriptableOptions; type ScriptableAndArray = readonly T[] | Scriptable; type ScriptableAndArrayOptions = { [P in keyof T]: ScriptableAndArray; }; declare namespace ISideMenu { type ItemData = string | number | object; interface Item { id: string | number; icon?: string; name?: string; link?: string; submenu?: Item[]; iconButton?: { icon: string; data?: ItemData; }; } } declare enum ASIDE_BUTTONS_ENUM { USER_ACTIVE = "User active", USER_INACTIVE = "User inactive", DELETE = "Delete", RESET = "Reset" } type AsideButtonsType = ASIDE_BUTTONS_ENUM.USER_ACTIVE | ASIDE_BUTTONS_ENUM.USER_INACTIVE | ASIDE_BUTTONS_ENUM.DELETE | ASIDE_BUTTONS_ENUM.RESET; declare namespace IAside { interface HeaderActionButton { name: AsideButtonsType; icon: string; color: string; tooltip: string; disabled?: boolean; } } declare class BreakStringPipe implements PipeTransform { transform(value: Nullable): string; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵpipe: i0.ɵɵPipeDeclaration; } declare class SanitizePipe implements PipeTransform { #private; transform(value: string): SafeHtml; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵpipe: i0.ɵɵPipeDeclaration; } declare class EntityToStringPipe implements PipeTransform { transform(value: T): string; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵpipe: i0.ɵɵPipeDeclaration; } declare class EmptyToDashPipe implements PipeTransform { transform(value: T | null | undefined): T | string; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵpipe: i0.ɵɵPipeDeclaration; } /** * @description Use to compare equality to any of items with provided value * @example * * Direct usage * ```ts * equalPipe.transform(100, 1, 10, 100) // => true * ``` * * Template usage * * ```html *
Visible
* ``` */ declare class EqualPipe implements PipeTransform { transform(value: any, ...compares: any[]): boolean; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵpipe: i0.ɵɵPipeDeclaration; } /** * @description Use to access to the deep object state for comparison * @example * {a: {b: true}} | equalChain:'a':'b':true => true */ declare class EqualChainPipe implements PipeTransform { transform(obj: object, ...args: any[]): boolean; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵpipe: i0.ɵɵPipeDeclaration; } /** * @description Use to compare not equality to all items with provided value * @example * * Direct usage * ```ts * notEqualPipe.transform(100, 1, 10, 100) // => false * ``` * * Template usage * * ```html *
Invisible
* ``` */ declare class NotEqualPipe implements PipeTransform { transform(value: any, ...compares: any[]): boolean; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵpipe: i0.ɵɵPipeDeclaration; } /** * @description Use to access to the deep object state for comparison * @example * {a: {b: true}} | equalChain:'a':'b':false => true */ declare class NotEqualChainPipe implements PipeTransform { transform(obj: object, ...args: any[]): boolean; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵpipe: i0.ɵɵPipeDeclaration; } declare class TernaryPipe implements PipeTransform { transform(value: any, option1: any, option2: any): any; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵpipe: i0.ɵɵPipeDeclaration; } /** * A service for detecting the platform on which the application is running. * This service is useful for checking if the application is running in a browser * environment or on the server-side. * * @Injectable */ declare class PlatformService { #private; readonly isPlatformBrowser: boolean; constructor(); static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } declare namespace OSTypes { const WINDOWS: string; const MAC_OS: string; const LINUX: string; const ANDROID: string; const IOS: string; const UNKNOWN: string; } declare class DeviceDetectorService { #private; userAgent: Nullable; constructor(); isMobile(): boolean; isTablet(): boolean; isDesktop(): boolean; getOS(): string; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } interface IBreakpoints { xl: string; lg: string; md: string; sm: string; xs: string; } /** * A service that manages responsive design breakpoints using Angular's `BreakpointObserver`. * This service provides signals for different screen sizes and allows dynamic * breakpoint management. * * @Injectable */ declare class BreakpointService { #private; readonly isDesktop: Signal>; readonly isSmallDesktop: Signal>; readonly isMobile: Signal>; readonly isTablet: Signal>; readonly isSmallTablet: Signal>; /** * Allows setting custom breakpoints for different screen sizes. * * @param breakpoints - The custom breakpoints to apply. */ setBreakpoints(breakpoints: IBreakpoints): void; /** * Helper function to decrement the pixel value by 1. * Used to exclude the exact pixel value in media queries. * * @usageNotes * * This function is useful for setting correct media queries. * E.g. for mobile devices: media query should be `(max-width: 599px)`, * and from `(min-width: 600px)` it should be considered as a tablet. * * @param value - The pixel value to decrement. * @returns The adjusted pixel value as a string. */ decrementOnePixel(value: string): string; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } declare class Breakpoints implements IBreakpoints { readonly xl: string; readonly lg: string; readonly md: string; readonly sm: string; readonly xs: string; } declare const WINDOW: InjectionToken; type AsidePositions = 'left' | 'right'; declare class AsideRef { private answer; overlayRef: OverlayRef; component: ComponentType; position: AsidePositions; data: DATA; constructor(answer: Subject, overlayRef: OverlayRef, component: ComponentType, position: AsidePositions, data: DATA); close(answer?: ANSWER): void; } declare const ASIDE_REF: InjectionToken>; declare const ddServices: Array<{ provide: string; useValue: unknown; }>; declare const NAVIGATOR: InjectionToken; declare function checkIsMatchingValues(sample: string): ValidatorFn; declare function arraysNotEmptyValidator(control: AbstractControl): ValidationErrors | null; declare enum MODAL_WINDOW_SIZE_ENUM { SM = "25rem", MD = "45rem", LG = "65rem", FULL = "100%" } type ModalWindowSizeType = MODAL_WINDOW_SIZE_ENUM.SM | MODAL_WINDOW_SIZE_ENUM.MD | MODAL_WINDOW_SIZE_ENUM.LG | MODAL_WINDOW_SIZE_ENUM.FULL; declare class RtIconOutlinedDirective { isOutlined: InputSignalWithTransform; get fontVariationSettings(): string; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class RtScrollToElementDirective { #private; rtScrollToElement: InputSignal; elements: InputSignalWithTransform; constructor(); static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class RtHideTooltipDirective implements AfterViewInit { #private; /** Current HTMLElement */ element: InputSignal; /** Indicates is tooltip shown */ isTooltipShown: InputSignalWithTransform; /** Set tooltip state by 'isTooltipShown' */ constructor(); ngAfterViewInit(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class RtNavigationDirective { #private; link: InputSignal>; onClick(event: MouseEvent): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare abstract class RtTabQueryParamDirective implements OnInit { #private; readonly currentTabIndex: Signal; ngOnInit(): void; setQueryTab(index: number): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class RtScrollDirective implements OnInit, OnDestroy { #private; active: InputSignal; multiplier: InputSignal; readonly scrollAction: OutputEmitterRef; ngOnInit(): void; ngOnDestroy(): void; scroll: EventListener; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class RtEscapeKeyDirective { readonly escapeKeyAction: OutputEmitterRef; handleKeyboardEvent(event: KeyboardEvent): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare abstract class BaseMapper implements IBaseMapper { readonly typeCast: TypeCastHelper; mapFrom(data: NonNullable, ...args: unknown[]): M; mapFromArray(data: NonNullable[], ...args: unknown[]): M[]; mapTo(model: M, ...args: unknown[]): unknown; mapToArray(models: M[], ...args: unknown[]): unknown[]; } declare const OVERLAY_POSITIONS: Readonly; declare const DASH: string; /** * Returns a set of dependency injection providers for utility services. * * @usageNotes * * This function provides utility services that are commonly used across * an Angular application. Specifically, it provides the `BreakpointService` * for managing responsive design breakpoints and the `PlatformService` for * detecting the platform on which the application is running (e.g., browser or server). * * ```typescript * bootstrapApplication(RootComponent, { * providers: [ * provideRtUtils() * ] * }); * ``` * * @publicApi */ declare function provideRtUtils(): Provider[]; declare class RtuiScrollableContainerHeaderDirective { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class RtuiScrollableContainerContentDirective { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class RtuiScrollableContainerFooterDirective { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class RtuiScrollableContainerComponent { readonly headerTpl: Signal>>>; readonly contentTpl: Signal>>>; readonly footerTpl: Signal>>>; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class RtuiSideMenuHeaderDirective { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class RtuiSideMenuFooterDirective { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class RtuiSideMenuComponent { #private; readonly headerTpl: Signal>>>; readonly footerTpl: Signal>>>; readonly subMenuRef: Signal>; readonly backToMainMenuButton: Signal; readonly selectedItem: WritableSignal>; readonly selectedSubMenu: WritableSignal>; activeMenuIds: InputSignal>; menuItems: InputSignalWithTransform; isMobile: InputSignalWithTransform, Nullable>; isSubMenuXScrollEnabled: InputSignalWithTransform; isMainMenuIconsOutlined: InputSignalWithTransform; isSubMenuIconsOutlined: InputSignalWithTransform; isSubMenuButtonIconsOutlined: InputSignalWithTransform; isSubMenuTooltipsShown: InputSignalWithTransform; activeMenuId: Signal; readonly closeMobileMenuAction: OutputEmitterRef; readonly clickSubMenuAction: OutputEmitterRef<{ item: ISideMenu.Item; event: MouseEvent; }>; readonly clickSubMenuAdditionalAction: OutputEmitterRef<{ data: ISideMenu.ItemData; event: MouseEvent; }>; onClickMenu(item: ISideMenu.Item): void; onClickSubMenu({ item, event }: { item: ISideMenu.Item; event: MouseEvent; }): void; onBackToMainMenu(): void; toggleSubMenu(item?: ISideMenu.Item): void; closeSubMenu(): void; closeMobileMenu(): void; clickSubMenuAdditional({ data, event }: { data: ISideMenu.ItemData; event: MouseEvent; }): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class RtuiSpinnerComponent { diameter: InputSignalWithTransform; showBox: InputSignalWithTransform; showBackground: InputSignalWithTransform; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class RtAsideService { #private; /** * Opens an aside panel with a specified component, position, and data. * * @template COMPONENT - The type of the component to display in the aside panel. * @template DATA - The type of the data to pass to the component. * @template ANSWER - The type of the response expected from the aside panel. * * @param component - The component to render inside the aside panel. * @param position - The position (left or right) where the aside panel should appear. * @param data - The data to pass to the component in the aside panel. * * @returns An observable that emits the response from the aside panel when it is closed. */ Open(component: ComponentType$1, position: AsidePositions, data: DATA): Observable; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } declare class RtuiAsideContainerHeaderDirective { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class RtuiAsideContainerComponent { title: InputSignal>; isMobile: InputSignalWithTransform, boolean>; isSubmitButtonDisabled: InputSignalWithTransform; isFooterShown: InputSignalWithTransform; pending: InputSignalWithTransform; isRequestErrorShown: InputSignalWithTransform; headerActionsButtons: InputSignalWithTransform; requestError: InputSignal>; submitButtonTitle: InputSignal; cancelButtonTitle: InputSignal; submitButtonTooltip: InputSignal; readonly submitAction: OutputEmitterRef; readonly cancelAction: OutputEmitterRef; readonly headerAction: OutputEmitterRef; readonly headerTpl: Signal>>>; onSubmit(): void; onCancel(): void; onHeaderActionClick(buttonName: AsideButtonsType): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class RtuiRoundIconButtonComponent { icon: InputSignal; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare enum BUTTON_SIZE { SMALL = "sm", MEDIUM = "md", LARGE = "lg", FULL = "full" } type ButtonSizeType = BUTTON_SIZE.SMALL | BUTTON_SIZE.MEDIUM | BUTTON_SIZE.LARGE | BUTTON_SIZE.FULL; declare enum BUTTON_COLOR { ACCENT = "accent", SUCCESS = "success", SECONDARY = "secondary", ERROR = "error", WARNING = "warning" } type ButtonColorType = BUTTON_COLOR.ACCENT | BUTTON_COLOR.SUCCESS | BUTTON_COLOR.ERROR | BUTTON_COLOR.WARNING | BUTTON_COLOR.SECONDARY; declare enum BUTTON_APPEARANCE { OUTLINE = "outline", LIGHT = "light" } type ButtonAppearanceType = BUTTON_APPEARANCE.OUTLINE | BUTTON_APPEARANCE.LIGHT; declare class RtuiButtonComponent { readonly size: InputSignal; readonly color: InputSignal; readonly appearance: InputSignal>; readonly modifierClass: Signal; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class RtuiMultiButtonComponent { actions: InputSignalWithTransform; activeAction: ModelSignal; readonly changeActiveAction: OutputEmitterRef; onSetActiveAction(action: string): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class RtuiToolbarLeftDirective { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class RtuiToolbarCenterDirective { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class RtuiToolbarRightDirective { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class RtuiToolbarComponent { isVisibleToolbar: Signal; readonly leftToolTpl: Signal>>>; readonly centerToolTpl: Signal>>>; readonly rightToolTpl: Signal>>>; sticky: InputSignalWithTransform, boolean>; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class RtuiHeaderLeftDirective { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class RtuiHeaderCenterDirective { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class RtuiHeaderRightDirective { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class RtuiHeaderComponent { isMobile: InputSignalWithTransform, Nullable>; isMobileMenuButtonShown: InputSignalWithTransform, Nullable>; readonly leftHeaderTpl: Signal>>>; readonly centerHeaderTpl: Signal>>>; readonly rightHeaderTpl: Signal>>>; readonly openMobileMenuAction: OutputEmitterRef; openSideMenu(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class RtuiClearButtonComponent { #private; isMobile: InputSignalWithTransform, boolean>; isButtonShown: InputSignalWithTransform, boolean>; tooltip: InputSignalWithTransform, string>; tooltipPosition: InputSignal; readonly keydownAction: OutputEmitterRef; readonly clickAction: OutputEmitterRef; onKeydown(): void; onClick(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare enum LIST_SORT_ORDER_ENUM { ASC = "asc", DESC = "desc" } type ListSortOrderType = LIST_SORT_ORDER_ENUM.ASC | LIST_SORT_ORDER_ENUM.DESC; interface ListState { pageModel: PageModel; sortModel: SortModel; filterModel: M; searchTerm: string; } interface SortModel { propertyName: T; sortDirection: ListSortOrderType; } interface PageModel { pageNumber: number; pageSize: number; totalCount: number; endIndex?: number; hasNext?: boolean; hasPrev?: boolean; isFirstPage?: boolean; isLastPage?: boolean; startIndex?: number; } interface FilterModel { operatorType: FilterOperatorType; propertyName: M; value?: string | number | boolean; values?: Array; } declare enum FILTER_OPERATOR_TYPE_ENUM { EQUALS = "equals", NOT_EQUALS = "notEquals", STARTS_WITH = "startsWith", ENDS_WITH = "endsWith", CONTAINS = "contains", GREATER_THAN = "greaterThan", LESS_THAN = "lessThan" } type FilterOperatorType = FILTER_OPERATOR_TYPE_ENUM.EQUALS | FILTER_OPERATOR_TYPE_ENUM.NOT_EQUALS | FILTER_OPERATOR_TYPE_ENUM.STARTS_WITH | FILTER_OPERATOR_TYPE_ENUM.ENDS_WITH | FILTER_OPERATOR_TYPE_ENUM.CONTAINS | FILTER_OPERATOR_TYPE_ENUM.GREATER_THAN | FILTER_OPERATOR_TYPE_ENUM.LESS_THAN; declare const FILTER_OPERATORS: ReadonlyArray; declare class RtuiPaginationComponent implements OnInit, AfterViewInit { #private; /** Current Page Model */ currentPageModel: InputSignal; /** Indicates is mobile view */ isMobile: InputSignalWithTransform, boolean>; /** Output action when Page Model changed */ readonly pageModelChange: OutputEmitterRef>; /** Form control for selected page size */ control: FormControl; readonly divider: Signal; /** Page size options */ readonly pageSizes: Signal; /** Array of current page numbers */ readonly numbers: WritableSignal>; /** Page Model for compare */ readonly previousPageModel: WritableSignal>; /** Value of full content width */ readonly minContentFitWidth: WritableSignal; /** Indicates is content clipped */ readonly isContentClipped: WritableSignal; /** Container template ref */ readonly containerRef: Signal>>; /** Set 'isContentClipped' when widow resize */ onResize(): void; ngOnInit(): void; /** Set 'isContentClipped' on init */ ngAfterViewInit(): void; /** Action for change Page Model */ changePageSize(pageSize: number): void; /** Action for select page */ onChangePageNumber(pageNumber: string | number): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare const RTUI_TABLE_STOP_ROW_CLICK_ATTRIBUTE: string; declare const DEFAULT_PAGE_SIZE: number; declare const DEFAULT_PAGE_MODEL: Readonly; declare enum TABLE_COLUMN_TYPES_ENUM { DATE = "date", PERCENT = "percent", ARRAY = "array", BOOLEAN = "boolean", TEXT = "text", CURRENCY = "currency", CUSTOM = "custom" } declare enum TABLE_COLUMN_FILTER_TYPES_ENUM { TEXT = "text", NUMBER = "number", SELECT = "select", DATE = "date" } declare enum TEXT_CELL_COLOR_ENUM { NEUTRAL = "neutral", DANGER = "danger", WARNING = "warning", SUCCESS = "success", EMPTY = "empty" } declare namespace ITable { type TextCellColor = TEXT_CELL_COLOR_ENUM.NEUTRAL | TEXT_CELL_COLOR_ENUM.DANGER | TEXT_CELL_COLOR_ENUM.WARNING | TEXT_CELL_COLOR_ENUM.SUCCESS | TEXT_CELL_COLOR_ENUM.EMPTY; type Type = TABLE_COLUMN_TYPES_ENUM.DATE | TABLE_COLUMN_TYPES_ENUM.PERCENT | TABLE_COLUMN_TYPES_ENUM.ARRAY | TABLE_COLUMN_TYPES_ENUM.BOOLEAN | TABLE_COLUMN_TYPES_ENUM.TEXT | TABLE_COLUMN_TYPES_ENUM.CURRENCY | TABLE_COLUMN_TYPES_ENUM.CUSTOM; type FilterType = TABLE_COLUMN_FILTER_TYPES_ENUM.TEXT | TABLE_COLUMN_FILTER_TYPES_ENUM.NUMBER | TABLE_COLUMN_FILTER_TYPES_ENUM.SELECT | TABLE_COLUMN_FILTER_TYPES_ENUM.DATE; interface Column> extends Record { align: 'right' | 'left' | 'center'; propName: keyof T; type: Type; copyable: boolean; header: Header; sorting?: SortModel>>; filtering?: boolean; filteringMultiple?: boolean; copyBtnAlign?: 'right' | 'left'; width?: string; minWidth?: string; icon?: Icon; iconTransform?: (value: T[keyof T]) => string; href?: string; className?: string; tooltip?: string; transform?: (value: T[keyof T]) => string | number; filterType?: FilterType; defaultFilterOperator?: FilterOperatorType; filterOperators?: FilterOperatorType[]; filterSelectOptions?: string[]; displayName?: string; orderIndex?: number; hidden?: boolean; fixed?: boolean; } interface ColumnFilter { propName: string; value: string; } interface Header { align: 'right' | 'left' | 'center'; label: string; className?: string; tooltip?: string; icon?: Icon; } interface Icon { glyph: string; color?: TextCellColor; tooltip?: string; visible?: boolean; placement?: 'left' | 'right'; outlined?: boolean; } namespace Config { interface Data { isVerticalScrollbarShown: boolean; isHorizontalScrollbarShown: boolean; columns: Array>; } interface Form { isVerticalScrollbarShown: FormControl; isHorizontalScrollbarShown: FormControl; columns: FormControl<(keyof T)[]>; } } } declare const RTUI_TABLE_COMPONENT_TOKEN: InjectionToken, string, string>>; interface IRtuiTable, SORT_PROPERTY extends Extract, KEY extends Extract> { columns: Signal>>; customCellsTpl: Signal; }>>; rowActionsTpl: Signal>>; additionalRowActionsTpl: Signal>>; isMobile: Signal; isTableRowsClickable: Signal; keyExp: Signal>; entities: Signal; currentSortModel: Signal>>; appearance: Signal; filterAppearance: Signal; filterModel: Signal[]>; isFiltersShown: Signal; selectedEntitiesIds: WritableSignal; isPageEntitiesSelected: WritableSignal; isPageEntitiesIndeterminate: WritableSignal; isMultiSelect: WritableSignal; isSelectorsColumnShown: WritableSignal; isSelectorsColumnDisabled: WritableSignal; activeRowIndex: WritableSignal>; onSortChange(sortModel: SortModel): void; onFilterChange(filterModel: FilterModel[]): void; onMenuOpen(index: number): void; onMenuClose(): void; onRowClick(row: ENTITY_TYPE, event: MouseEvent): void; onRowDoubleClick(row: ENTITY_TYPE): void; onToggleEntity(entity: ENTITY_TYPE, checked: boolean): void; onTogglePageEntities(checked: boolean): void; } declare class RtTableConfigService { #private; readonly tableConfig: Signal>; initConfig(storageKey: string, config: Array>): void; updateConfig(storageKey: string, config: ITable.Config.Data): void; deleteConfig(storageKey: string): void; static ɵfac: i0.ɵɵFactoryDeclaration, never>; static ɵprov: i0.ɵɵInjectableDeclaration>; } declare class RtCommonSelectorsDirective, KEY extends Extract> { /** Indicates is multiselect available */ isMultiSelect: InputSignalWithTransform; /** Indicates is 'Select all' checkbox shown */ isSelectorColumnShown: InputSignalWithTransform; /** Indicates is selectors column disabled */ isSelectorsColumnDisabled: InputSignalWithTransform; /** Selected entities Ids on init */ selectedEntitiesKeys: InputSignalWithTransform; /** Key of ENTITY_TYPE for compare entities */ readonly keyExp: WritableSignal>; /** Current list of entities */ readonly entities: WritableSignal; /** Add page entities to list exclude duplicates */ addPageEntitiesToListExcludeDuplicates(list: ENTITY_TYPE[]): ENTITY_TYPE[]; /** Remove page entities from list */ removePageEntitiesFromList(list: ENTITY_TYPE[]): ENTITY_TYPE[]; /** Check is one of page entities exist in selected entities */ isOneExistOnPage(selectedEntitiesIds: ENTITY_TYPE[KEY][]): boolean; /** Check is all page entities exist in selected entities */ isAllExistOnPage(selectedEntitiesIds: ENTITY_TYPE[KEY][]): boolean; static ɵfac: i0.ɵɵFactoryDeclaration, never>; static ɵdir: i0.ɵɵDirectiveDeclaration, never, never, { "isMultiSelect": { "alias": "isMultiSelect"; "required": false; "isSignal": true; }; "isSelectorColumnShown": { "alias": "isSelectorColumnShown"; "required": false; "isSignal": true; }; "isSelectorsColumnDisabled": { "alias": "isSelectorsColumnDisabled"; "required": false; "isSignal": true; }; "selectedEntitiesKeys": { "alias": "selectedEntitiesKeys"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>; } declare class RtDynamicListSelectorsDirective, SORT_PROPERTY extends Extract, KEY extends Extract> extends RtCommonSelectorsDirective implements OnInit { #private; /** Indicates is multiselect extended mod available (use selected and excluded lists) */ isMultiSelectExtendedMod: InputSignalWithTransform; /** Indicates is 'Select all' checkbox shown */ isSelectAllSelectorShown: InputSignalWithTransform; /** List of selected entities */ readonly selectedEntities: Signal; /** List of excluded entities */ readonly excludedEntities: Signal; /** List of selected entities ids */ readonly selectedEntitiesIds: Signal; /** List of excluded entities ids */ readonly excludedEntitiesIds: Signal; /** Indicates is 'Select All' checkbox selected */ readonly isAllEntitiesSelected: Signal; /** Indicates is all page entities checkbox selected */ readonly isPageEntitiesSelected: Signal; /** Indicates is page entities checkbox indeterminate */ readonly isPageEntitiesIndeterminate: Signal; /** Indicates is multi select extended mod enabled */ readonly isMultiSelectExtendedModEnabled: Signal; ngOnInit(): void; /** Change selected entities list and 'isAllEntitiesSelected' indicator state */ toggleAllEntities(checked: boolean): void; /** Change selected and excluded lists, set 'isPageEntitiesSelected' and 'isAllEntitiesSelected' indicators states */ togglePageEntities(checked: boolean): void; /** Change selected and excluded lists and set is existing selected and is all selected states */ toggleEntity(entity: ENTITY_TYPE, checked: boolean): void; /** Clear selected list */ clearSelectedList(): void; /** Clear excluded list */ clearExcludedList(): void; /** Set is existing selected and indeterminate state */ setExistingEntitiesState(): void; static ɵfac: i0.ɵɵFactoryDeclaration, never>; static ɵdir: i0.ɵɵDirectiveDeclaration, "rtui-dynamic-list[rtDynamicListSelectorsDirective]", never, { "isMultiSelectExtendedMod": { "alias": "isMultiSelectExtendedMod"; "required": false; "isSignal": true; }; "isSelectAllSelectorShown": { "alias": "isSelectAllSelectorShown"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>; } declare class RtTableSelectorsDirective, SORT_PROPERTY extends Extract, KEY extends Extract> extends RtCommonSelectorsDirective implements OnInit { #private; /** List of selected entities */ readonly selectedEntities: Signal; /** List of selected entities ids */ readonly selectedEntitiesIds: Signal; /** Indicates is all page entities checkbox selected */ readonly isPageEntitiesSelected: Signal; /** Indicates is page entities checkbox indeterminate */ readonly isPageEntitiesIndeterminate: Signal; ngOnInit(): void; /** Change selected and excluded lists, set 'isPageEntitiesSelected' and 'isAllEntitiesSelected' indicators states */ togglePageEntities(checked: boolean): void; /** Change selected and excluded lists and set is existing selected and is all selected states */ toggleEntity(entity: ENTITY_TYPE, checked: boolean): void; /** Clear selected list */ clearSelectedList(): void; /** Set is existing selected and indeterminate state */ setExistingEntitiesState(): void; static ɵfac: i0.ɵɵFactoryDeclaration, never>; static ɵdir: i0.ɵɵDirectiveDeclaration, "rtui-table[rtTableSelectorsDirective]", never, {}, {}, never, never, true, never>; } /** Directive for custom table cells */ declare class RtuiCustomTableCellsDirective { cellsTemplates: InputSignal<{ [K in keyof ENTITY_TYPE]: TemplateRef<{ $implicit: ENTITY_TYPE; }>; }>; getTemplateByPropName(propName: keyof ENTITY_TYPE): TemplateRef<{ $implicit: ENTITY_TYPE; }>; static ɵfac: i0.ɵɵFactoryDeclaration, never>; static ɵdir: i0.ɵɵDirectiveDeclaration, "[rtuiCustomTableCellsDirective]", never, { "cellsTemplates": { "alias": "rtuiCustomTableCellsDirective"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>; } /** Directive for row actions located inside a row menu button */ declare class RtuiTableRowActionsDirective { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } /** Directive for row actions located outside a row menu button */ declare class RtuiTableAdditionalRowActionsDirective { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class RtuiTableComponent, SORT_PROPERTY extends Extract, KEY extends Extract> implements IRtuiTable, AfterViewChecked { #private; protected readonly rowActions: Signal>>; protected readonly rowActionsHeaderPaddingHelper: Signal>>; protected readonly rowActionsPaddingHelper: Signal>>; protected readonly columnTypes: typeof TABLE_COLUMN_TYPES_ENUM; protected readonly filterOperators: typeof FILTER_OPERATOR_TYPE_ENUM; /** Indicates is mobile view */ isMobile: InputSignalWithTransform; /** Indicates are table rows clickable */ isTableRowsClickable: InputSignalWithTransform; /** Key of ENTITY_TYPE for compare entities */ keyExp: InputSignal>; /** List of entities */ entities: InputSignalWithTransform; /** Current page model from store */ currentSortModel: InputSignal>>; /** Current elements appearance */ appearance: InputSignal; /** Filter inputs appearance */ filterAppearance: InputSignal; /** Current filter model from store */ filterModel: InputSignalWithTransform[], FilterModel[]>; /** Indicates is filters shown */ isFiltersShown: InputSignalWithTransform; /** Row click output action */ readonly rowClick: OutputEmitterRef>; /** Row doubleClick output action */ readonly rowDoubleClick: OutputEmitterRef>; /** Sort change output action */ readonly sortChange: OutputEmitterRef>; /** Filter change output action */ readonly filterChange: OutputEmitterRef[]>; /** Columns config for table */ columns: Signal>>; /** Custom cells template */ readonly customCellsTpl: Signal>>; /** Row actions template */ readonly rowActionsTpl: Signal>>; /** Additional row actions template */ readonly additionalRowActionsTpl: Signal>>; /** Fields specified by the directive */ /** List of selected entities ids */ readonly selectedEntitiesIds: WritableSignal; /** Indicates are all page entities selected */ readonly isPageEntitiesSelected: WritableSignal; /** Indicates are some page entities selected */ readonly isPageEntitiesIndeterminate: WritableSignal; /** Indicates is multiselect mod enabled */ readonly isMultiSelect: WritableSignal; /** Indicates is selectors column shown */ readonly isSelectorsColumnShown: WritableSignal; /** Indicates is selectors column disabled */ readonly isSelectorsColumnDisabled: WritableSignal; /** Current row index */ readonly activeRowIndex: WritableSignal>; ngAfterViewChecked(): void; /** Sort change output action */ onSortChange(sortModel: SortModel): void; /** Filter change output action */ onFilterChange(filterModel: FilterModel[]): void; /** Open row actions menu */ onMenuOpen(index: number): void; /** Close the row actions menu */ onMenuClose(): void; /** Row click output actions */ onRowClick(row: NonNullable, event: MouseEvent): void; /** Row doubleClick output action */ onRowDoubleClick(row: NonNullable): void; /** Empty methods set in selectors directive */ onToggleEntity: (entity: ENTITY_TYPE, checked: boolean) => void; onTogglePageEntities: (checked: boolean) => void; static ɵfac: i0.ɵɵFactoryDeclaration, never>; static ɵcmp: i0.ɵɵComponentDeclaration, "rtui-table", never, { "isMobile": { "alias": "isMobile"; "required": false; "isSignal": true; }; "isTableRowsClickable": { "alias": "isTableRowsClickable"; "required": false; "isSignal": true; }; "keyExp": { "alias": "keyExp"; "required": false; "isSignal": true; }; "entities": { "alias": "entities"; "required": true; "isSignal": true; }; "currentSortModel": { "alias": "currentSortModel"; "required": true; "isSignal": true; }; "appearance": { "alias": "appearance"; "required": true; "isSignal": true; }; "filterAppearance": { "alias": "filterAppearance"; "required": false; "isSignal": true; }; "filterModel": { "alias": "filterModel"; "required": false; "isSignal": true; }; "isFiltersShown": { "alias": "isFiltersShown"; "required": false; "isSignal": true; }; }, { "rowClick": "rowClick"; "rowDoubleClick": "rowDoubleClick"; "sortChange": "sortChange"; "filterChange": "filterChange"; }, ["customCellsTpl", "rowActionsTpl", "additionalRowActionsTpl"], never, true, never>; } declare class RtuiTableContainerComponent implements OnInit { #private; appearance: InputSignal; /** Table config storage key */ tableConfigStorageKey: InputSignalWithTransform; /** Current page model from store */ pageModel: InputSignal; /** Indicates is mobile view */ isMobile: InputSignalWithTransform; /** Indicates is loading in progress */ loading: InputSignalWithTransform; /** Indicates is fetching in progress */ fetching: InputSignalWithTransform; /** Indicates is placeholder shown */ isPlaceholderShown: InputSignalWithTransform; /** Indicates is pagination shown */ isPaginationShown: InputSignalWithTransform; /** Indicates is the refresh button shown */ isRefreshButtonShown: InputSignalWithTransform; /** Indicates is a table config button shown */ isTableConfigButtonShown: InputSignalWithTransform; /** Indicates is toolbar buttons outlined */ isToolbarActionsIconsOutlined: InputSignalWithTransform; /** Indicates is filters shown */ isFiltersShown: InputSignalWithTransform; /** Indicates is filters empty */ isFiltersEmpty: InputSignalWithTransform; /** Current search term from store */ searchTerm: InputSignalWithTransform, Nullable>; /** Current placeholder icon */ placeholderIcon: InputSignal; /** Current placeholder title */ placeholderTitle: InputSignal; /** Indicates is a small tablet view */ readonly isSmallTablet: Signal>; /** Config for table */ readonly tableConfig: Signal>; /** Page model change output action */ readonly pageModelChange: OutputEmitterRef>; /** Search change output action */ readonly searchChange: OutputEmitterRef>; /** Refresh output action */ readonly refreshAction: OutputEmitterRef; /** Clear filters output action */ readonly clearFiltersAction: OutputEmitterRef; /** Toolbar selectors template */ readonly toolbarSelectorsTpl: Signal>>>; /** Toolbar actions template */ readonly toolbarActionsTpl: Signal>>>; /** Fields specified by the directive */ /** Indicates is multiselect mod enabled */ readonly isMultiSelect: WritableSignal; /** Indicates is 'Select All' selector shown */ readonly isSelectAllSelectorShown: WritableSignal; /** Indicates is 'Select All' selector disabled */ readonly isSelectAllSelectorDisabled: WritableSignal; /** Indicates is all entities selected */ readonly isAllEntitiesSelected: WritableSignal; /** Indicates is all entities indeterminate */ readonly isAllEntitiesIndeterminate: WritableSignal; /** Current selected entities count */ readonly selectedEntitiesCount: WritableSignal; /** Control for search */ readonly searchControl: FormControl>; ngOnInit(): void; /** Page model change output action */ onPageModelChange(pageModel: Partial): void; /** Clear search control and search change output action */ onClearSearch(): void; /** Refresh output action */ onRefresh(): void; /** Clear filters output action */ onClearFilters(): void; /** Open table config aside */ onOpenConfigAside(): void; /** Empty method, set in selectors directive */ onToggleAllEntities: (checked: boolean) => void; static ɵfac: i0.ɵɵFactoryDeclaration, never>; static ɵcmp: i0.ɵɵComponentDeclaration, "rtui-table-container", never, { "appearance": { "alias": "appearance"; "required": true; "isSignal": true; }; "tableConfigStorageKey": { "alias": "tableConfigStorageKey"; "required": true; "isSignal": true; }; "pageModel": { "alias": "pageModel"; "required": true; "isSignal": true; }; "isMobile": { "alias": "isMobile"; "required": true; "isSignal": true; }; "loading": { "alias": "loading"; "required": true; "isSignal": true; }; "fetching": { "alias": "fetching"; "required": true; "isSignal": true; }; "isPlaceholderShown": { "alias": "isPlaceholderShown"; "required": true; "isSignal": true; }; "isPaginationShown": { "alias": "isPaginationShown"; "required": false; "isSignal": true; }; "isRefreshButtonShown": { "alias": "isRefreshButtonShown"; "required": false; "isSignal": true; }; "isTableConfigButtonShown": { "alias": "isTableConfigButtonShown"; "required": false; "isSignal": true; }; "isToolbarActionsIconsOutlined": { "alias": "isToolbarActionsIconsOutlined"; "required": false; "isSignal": true; }; "isFiltersShown": { "alias": "isFiltersShown"; "required": false; "isSignal": true; }; "isFiltersEmpty": { "alias": "isFiltersEmpty"; "required": false; "isSignal": true; }; "searchTerm": { "alias": "searchTerm"; "required": false; "isSignal": true; }; "placeholderIcon": { "alias": "placeholderIcon"; "required": false; "isSignal": true; }; "placeholderTitle": { "alias": "placeholderTitle"; "required": false; "isSignal": true; }; }, { "pageModelChange": "pageModelChange"; "searchChange": "searchChange"; "refreshAction": "refreshAction"; "clearFiltersAction": "clearFiltersAction"; }, ["toolbarSelectorsTpl", "toolbarActionsTpl"], ["*"], true, never>; } /** Directive for selectors of the toolbar located on the left side */ declare class RtuiDynamicListToolbarSelectorsDirective { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } /** Directive for actions of the toolbar located on the right side */ declare class RtuiDynamicListToolbarActionsDirective { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } /** Directive for custom table cells */ declare class RtuiDynamicListCustomTableCellsDirective { cellsTemplates: InputSignal<{ [K in keyof ENTITY_TYPE]: TemplateRef<{ $implicit: ENTITY_TYPE; }>; }>; static ɵfac: i0.ɵɵFactoryDeclaration, never>; static ɵdir: i0.ɵɵDirectiveDeclaration, "[rtuiDynamicListCustomTableCellsDirective]", never, { "cellsTemplates": { "alias": "rtuiDynamicListCustomTableCellsDirective"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>; } /** Directive for row actions located inside a row menu button */ declare class RtuiDynamicListRowActionsDirective { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } /** Directive for row actions located outside a row menu button */ declare class RtuiDynamicListRowAdditionalActionsDirective { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class RtuiDynamicListComponent, SORT_PROPERTY extends Extract, KEY extends Extract> { /** Table config storage key */ tableConfigStorageKey: InputSignalWithTransform; /** Indicates is mobile view */ isMobile: InputSignalWithTransform, BooleanInput>; /** Indicates is loading in progress */ loading: InputSignalWithTransform; /** Indicates is fetching in progress */ fetching: InputSignalWithTransform; /** Indicates are table rows clickable */ isTableRowsClickable: InputSignalWithTransform; /** Indicates is pagination shown */ isPaginationShown: InputSignalWithTransform; /** Indicates is the refresh button shown */ isRefreshButtonShown: InputSignalWithTransform; /** Indicates is a table config button shown */ isTableConfigButtonShown: InputSignalWithTransform; /** Indicates is toolbar buttons outlined */ isToolbarActionsIconsOutlined: InputSignalWithTransform; /** Key of ENTITY_TYPE for compare entities */ keyExp: InputSignal>; /** List of entities */ entities: InputSignalWithTransform; /** Current page model from store */ pageModel: InputSignal; /** Current search term from store */ searchTerm: InputSignal>; /** Current sort model from store */ currentSortModel: InputSignal>>>; /** Inputs appearance */ appearance: InputSignal; /** Filter inputs appearance */ filterAppearance: InputSignal; /** Current filter model from store */ filterModel: InputSignalWithTransform[], FilterModel[]>; /** Indicates is filters shown */ isFiltersShown: InputSignalWithTransform; /** Sort model change output action */ readonly sortChange: OutputEmitterRef>>; /** Page model change output action */ readonly pageModelChange: OutputEmitterRef>; /** Search change output action */ readonly searchChange: OutputEmitterRef>; /** Refresh output action */ readonly refresh: OutputEmitterRef; /** Clear filters output action */ readonly clearFiltersAction: OutputEmitterRef; /** Row click output action */ readonly rowClick: OutputEmitterRef>; /** Row doubleClick output action */ readonly rowDoubleClick: OutputEmitterRef>; /** Filter change output action */ readonly filterChange: OutputEmitterRef[]>; /** Toolbar selectors template */ readonly toolbarSelectorsTpl: Signal>>>; /** Toolbar actions template */ readonly toolbarActionsTpl: Signal>>>; /** Custom cells template */ readonly customCellsTpl: Signal>>; /** Row actions template */ readonly rowActionsTpl: Signal>>; /** Additional row actions template */ readonly additionalRowActionsTpl: Signal>>; /** Table container for selectors directive usage */ readonly tableContainerTpl: Signal>>; /** Table selector for selectors directive usage */ readonly tableTpl: Signal>>; /** Search change output action */ onSearchChange(value: Nullable): void; /** Sort change output action */ onSortChange(sortModel: SortModel>): void; /** Page model change output action */ onPageModelChange(pageModel: Partial): void; /** Filter change output action */ onFilterChange(filterModel: FilterModel[]): void; /** Refresh output action */ onRefresh(): void; /** Clear filters output action */ onClearFilters(): void; /** Row click output action */ onRowClick({ row, event }: { row: ENTITY_TYPE; event: MouseEvent; }): void; /** Row doubleClick output action */ onRowDoubleClick(row: ENTITY_TYPE): void; static ɵfac: i0.ɵɵFactoryDeclaration, never>; static ɵcmp: i0.ɵɵComponentDeclaration, "rtui-dynamic-list", never, { "tableConfigStorageKey": { "alias": "tableConfigStorageKey"; "required": true; "isSignal": true; }; "isMobile": { "alias": "isMobile"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "fetching": { "alias": "fetching"; "required": false; "isSignal": true; }; "isTableRowsClickable": { "alias": "isTableRowsClickable"; "required": false; "isSignal": true; }; "isPaginationShown": { "alias": "isPaginationShown"; "required": false; "isSignal": true; }; "isRefreshButtonShown": { "alias": "isRefreshButtonShown"; "required": false; "isSignal": true; }; "isTableConfigButtonShown": { "alias": "isTableConfigButtonShown"; "required": false; "isSignal": true; }; "isToolbarActionsIconsOutlined": { "alias": "isToolbarActionsIconsOutlined"; "required": false; "isSignal": true; }; "keyExp": { "alias": "keyExp"; "required": false; "isSignal": true; }; "entities": { "alias": "entities"; "required": true; "isSignal": true; }; "pageModel": { "alias": "pageModel"; "required": true; "isSignal": true; }; "searchTerm": { "alias": "searchTerm"; "required": true; "isSignal": true; }; "currentSortModel": { "alias": "currentSortModel"; "required": true; "isSignal": true; }; "appearance": { "alias": "appearance"; "required": true; "isSignal": true; }; "filterAppearance": { "alias": "filterAppearance"; "required": false; "isSignal": true; }; "filterModel": { "alias": "filterModel"; "required": false; "isSignal": true; }; "isFiltersShown": { "alias": "isFiltersShown"; "required": false; "isSignal": true; }; }, { "sortChange": "sortChange"; "pageModelChange": "pageModelChange"; "searchChange": "searchChange"; "refresh": "refresh"; "clearFiltersAction": "clearFiltersAction"; "rowClick": "rowClick"; "rowDoubleClick": "rowDoubleClick"; "filterChange": "filterChange"; }, ["toolbarSelectorsTpl", "toolbarActionsTpl", "customCellsTpl", "rowActionsTpl", "additionalRowActionsTpl"], never, true, never>; } declare class RtuiStopTableRowClickDirective implements OnInit { #private; ngOnInit(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class RtuiTableRowClickDirective, SORT_PROPERTY extends Extract, KEY extends Extract> { #private; /** Row entity */ readonly entity: InputSignal; /** Enabled flag */ isTableRowClickable: InputSignalWithTransform; onMouseDown(event: MouseEvent): void; onDoubleClick(event: MouseEvent): void; static ɵfac: i0.ɵɵFactoryDeclaration, never>; static ɵdir: i0.ɵɵDirectiveDeclaration, "[rtuiTableRowClickDirective]", never, { "entity": { "alias": "rtuiTableRowClickDirective"; "required": true; "isSignal": true; }; "isTableRowClickable": { "alias": "isTableRowClickable"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>; } /** * Returns a set of the necessary dependency injection providers for managing the UI. * * ```typescript * bootstrapApplication(RootComponent, { * providers: [ * provideRtUi() * ] * }); * ``` * * @publicApi */ declare function provideRtUi(): Provider[]; declare namespace IRtSnackBar { interface Config extends MatSnackBarConfig { icon?: Nullable; isColoredBackground?: boolean; action?: Nullable; isProgressBarShown?: boolean; } interface Data extends Config { message: string; } } declare class RtuiSnackBarComponent { #private; readonly data: IRtSnackBar.Data; player: AnimationPlayer | undefined; readonly progressTplRef: Signal>>; constructor(); onMouseOver(): void; onMouseOut(): void; dismiss(): void; close(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class RtSnackBarService { #private; private readonly defaultConfig; default(message: string, config?: IRtSnackBar.Config): MatSnackBarRef; warning(message: string, config?: IRtSnackBar.Config): MatSnackBarRef; danger(message: string, config?: IRtSnackBar.Config): MatSnackBarRef; success(message: string, config?: IRtSnackBar.Config): MatSnackBarRef; dismiss(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } declare const progressIncreaseAnimation: AnimationTriggerMetadata[]; declare const progressDecreaseAnimation: AnimationTriggerMetadata[]; declare enum INFO_BADGE_SIZE_ENUM { LARGE = "l", MEDIUM = "m", SMALL = "s" } type IInfoBadgeSizeType = INFO_BADGE_SIZE_ENUM.LARGE | INFO_BADGE_SIZE_ENUM.MEDIUM | INFO_BADGE_SIZE_ENUM.SMALL; declare function darkenHexColor(hex: string, percent: number): string; declare function getColorBasedOnBackground(backgroundColor: string): string; declare enum POSITION_ENUM { LEFT = "left", RIGHT = "right", TOP = "top", BOTTOM = "bottom", START = "start", END = "end", CENTER = "center" } type IconSideType = POSITION_ENUM.LEFT | POSITION_ENUM.RIGHT; declare class RtuiInfoBadgeComponent implements AfterContentChecked { size: InputSignal; text: InputSignal; glyph: InputSignal; iconSide: InputSignal; isFontBold: InputSignal; isMobile: InputSignalWithTransform, boolean>; isTitleCollapsed: WritableSignal; readonly contentRef: Signal | undefined>; get badgeClass(): { [key: string]: boolean | string; }; get iconStyles(): { [key: string]: string; }; ngAfterContentChecked(): void; checkEllipsis(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare enum INFO_BADGE_TYPE_ENUM { SUCCESS = "success", INFO = "info", WARNING = "warning", PRIMARY = "primary", DISABLED = "disabled" } type InfoBadgeType = INFO_BADGE_TYPE_ENUM.SUCCESS | INFO_BADGE_TYPE_ENUM.INFO | INFO_BADGE_TYPE_ENUM.WARNING | INFO_BADGE_TYPE_ENUM.PRIMARY | INFO_BADGE_TYPE_ENUM.DISABLED; declare enum TOGGLE_SIZE_TYPE_ENUM { SM = "sm", MD = "md" } type ToggleSizeType = TOGGLE_SIZE_TYPE_ENUM.SM | TOGGLE_SIZE_TYPE_ENUM.MD; declare class RtuiToggleComponent implements OnInit, ControlValueAccessor { #private; formControl: FormControl; label: InputSignal>; tooltip: InputSignal; size: InputSignal; tooltipPosition: InputSignal; isDisabled: InputSignalWithTransform; tooltipDisabled: InputSignalWithTransform; readonly isMobile: Signal>; ngOnInit(): void; writeValue(value: boolean): void; registerOnChange(fn: () => void): void; registerOnTouched(fn: () => void): void; setDisabledState(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class RtuiFileUploadComponent { isIconOutlined: InputSignal; readonly uploadFile: OutputEmitterRef; readonly isDragOver: WritableSignal; onDragOver(event: DragEvent): void; onDragLeave(event: DragEvent): void; onDrop(event: DragEvent): void; onFileSelect(event: Event): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare abstract class RtuiDynamicSelectorsDirective { /** Indicates if mobile view */ isMobile: InputSignalWithTransform, boolean>; /** Selections control button title */ buttonTitle: InputSignalWithTransform; /** Indicates if only one option can be chosen */ isSingleSelection: InputSignalWithTransform; /** Indicates is selector disabled */ disabled: InputSignalWithTransform; /** Indicates is break string pipe used */ useNameBreaking: InputSignalWithTransform; /** Indicates is title case pipe used */ useTitleCase: InputSignalWithTransform; isPlaceholderIconOutlined: InputSignalWithTransform; /** Indicates is delete entity button from the selected list shown */ isDeleteButtonShown: InputSignalWithTransform; /** Indicates is list of items draggable */ isListDraggable: InputSignalWithTransform; /** Placeholder icon */ placeholderIcon: InputSignalWithTransform; /** Placeholder description */ placeholderDescription: InputSignalWithTransform; /** Material elements appearance */ appearance: InputSignal; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } interface FormModel$1 { autocompleteControl: FormControl>; } /** Directive for row actions located outside a row menu button */ declare class RtuiDynamicSelectorAdditionalControlDirective { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class RtuiDynamicSelectorComponent, KEY extends Extract> extends RtuiDynamicSelectorsDirective implements ControlValueAccessor, Validator, OnInit { #private; /** Config for overlay selector */ protected readonly connectedOverlayPositions: ConnectedPosition[]; form: FormGroup; /** Target element for overlay selector */ selectedOverlayTrigger: Nullable; /** A model's field which should be used for http-requests */ keyExp: InputSignal; /** A model's field which should be shown in ui */ displayExp: InputSignal; /** All entities available entities */ entities: InputSignalWithTransform; /** Navigation button title for popup actions */ navigateButtonTitle: InputSignal; /** Navigation button link for popup actions */ navigateLink: InputSignal; /** Entity keys that can't be changed */ readonlyEntitiesKeys: InputSignalWithTransform; /** Selected entities */ chosenEntities: ModelSignal; /** Indicates is selection available */ isSelectionAvailable: InputSignalWithTransform; /** Indicates is placeholder shown */ isPlaceholderShown: InputSignalWithTransform; /** Indicates that a list of entities is being loading */ loading: InputSignalWithTransform; /** Indicates that a list of entities is being pending */ pending: InputSignalWithTransform; /** Indicates that a list of entities is being fetching */ fetching: InputSignalWithTransform; /** Indicates lazy loading is used */ isLazyLoad: InputSignalWithTransform; /** Indicates local search is used */ isLocalSearch: InputSignalWithTransform; /** Indicates is change multi select mode toggle shown */ isMultiToggleShown: InputSignalWithTransform; /** Indicates is Select all button shown */ isSelectAllButtonShown: InputSignalWithTransform; /** Indicates is Open popup button shown */ isOpenPopupButtonShown: InputSignalWithTransform; /** Init search term value */ searchTerm: InputSignal; /** Indicates that an additional control has been changed */ additionalControlChanged: InputSignal; /** Output search action */ readonly searchAction: OutputEmitterRef; /** Output scroll action, needed for lazy loading */ readonly scrollAction: OutputEmitterRef; /** Output temporary selection action, needed for store values */ readonly temporarySelectAction: OutputEmitterRef; /** Output reset list to initial value action */ readonly resetAction: OutputEmitterRef; /** Output selection change action */ readonly selectionChangeAction: OutputEmitterRef; /** Current selected entities */ readonly selectedEntities: Signal; /** Indicates is popup selector visible */ readonly isSelectionControlShown: WritableSignal; /** Indicates is no data */ readonly isNoDataPlaceholderShown: Signal; /** Indicates reset selected button is disabled */ readonly isResetButtonDisabled: Signal; /** Indicates clear selected button is disabled */ readonly isClearButtonDisabled: Signal; /** Entities can be chosen, except selected on init */ readonly entitiesToSelect: Signal; /** Additional control for entity */ readonly additionalControlTpl: Signal>>; ngOnInit(): void; writeValue(value: Array): void; registerOnChange(fn: (value: Array) => void): void; registerOnTouched(fn: () => void): void; validate(): ValidationErrors | null; registerOnValidatorChange(fn: () => void): void; /** Show popup selector */ showSelectionControl(trigger: CdkOverlayOrigin): void; /** Hide popup selector */ hideSelectionControl(): void; /** Add entity to or delete entity from list of selected */ toggleEntity(keyValue: ENTITY[KEY]): void; /** Clear list of selected entities ids */ clearList(): void; /** Reset list of selected entities ids to init value */ resetList(): void; /** Proceed selected entities ids */ select(values: ENTITY[KEY][]): void; /** Scroll action, needed for lazy load mode */ scroll(): void; /** Search action */ search(searchTerm: string): void; /** Set temporary selection, needed for lazy load mode */ setTemporarySelection(values: ENTITY[]): void; /** Proceed move items in list */ onDrop(event: CdkDragDrop): void; static ɵfac: i0.ɵɵFactoryDeclaration, never>; static ɵcmp: i0.ɵɵComponentDeclaration, "rtui-dynamic-selector", never, { "keyExp": { "alias": "keyExp"; "required": true; "isSignal": true; }; "displayExp": { "alias": "displayExp"; "required": true; "isSignal": true; }; "entities": { "alias": "entities"; "required": true; "isSignal": true; }; "navigateButtonTitle": { "alias": "navigateButtonTitle"; "required": false; "isSignal": true; }; "navigateLink": { "alias": "navigateLink"; "required": false; "isSignal": true; }; "readonlyEntitiesKeys": { "alias": "readonlyEntitiesKeys"; "required": false; "isSignal": true; }; "chosenEntities": { "alias": "chosenEntities"; "required": false; "isSignal": true; }; "isSelectionAvailable": { "alias": "isSelectionAvailable"; "required": false; "isSignal": true; }; "isPlaceholderShown": { "alias": "isPlaceholderShown"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "pending": { "alias": "pending"; "required": false; "isSignal": true; }; "fetching": { "alias": "fetching"; "required": false; "isSignal": true; }; "isLazyLoad": { "alias": "isLazyLoad"; "required": false; "isSignal": true; }; "isLocalSearch": { "alias": "isLocalSearch"; "required": false; "isSignal": true; }; "isMultiToggleShown": { "alias": "isMultiToggleShown"; "required": false; "isSignal": true; }; "isSelectAllButtonShown": { "alias": "isSelectAllButtonShown"; "required": false; "isSignal": true; }; "isOpenPopupButtonShown": { "alias": "isOpenPopupButtonShown"; "required": false; "isSignal": true; }; "searchTerm": { "alias": "searchTerm"; "required": false; "isSignal": true; }; "additionalControlChanged": { "alias": "additionalControlChanged"; "required": false; "isSignal": true; }; }, { "chosenEntities": "chosenEntitiesChange"; "searchAction": "searchAction"; "scrollAction": "scrollAction"; "temporarySelectAction": "temporarySelectAction"; "resetAction": "resetAction"; "selectionChangeAction": "selectionChangeAction"; }, ["additionalControlTpl"], never, true, never>; } interface FormModel { control: FormControl; controlForUi: FormControl>; } /** Directive for row actions located outside a row menu button */ declare class RtuiDynamicInputAdditionalControlDirective { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class RtuiDynamicInputComponent extends RtuiDynamicSelectorsDirective implements ControlValueAccessor, Validator, OnInit { #private; form: FormGroup; /** Indicates is placeholder shown */ isPlaceholderShown: ModelSignal>; /** Indicates is inputs-editable */ isInputsEditable: InputSignalWithTransform; /** Input label */ inputLabel: InputSignalWithTransform; /** Input placeholder */ inputPlaceholder: InputSignalWithTransform; /** Entity keys that can't be changed */ readonlyEntitiesKeys: InputSignalWithTransform; /** Array of selected entities */ readonly selectedEntities: WritableSignal>; /** Indicates is input control shown */ readonly isInputControlShown: WritableSignal; /** Indicates the reset changes button is disabled */ readonly isResetButtonDisabled: WritableSignal; /** Additional control for entity */ readonly additionalControlTpl: Signal>>; ngOnInit(): void; writeValue(value: string[]): void; registerOnChange(fn: (value: string[]) => void): void; registerOnTouched(fn: () => void): void; validate(): ValidationErrors | null; registerOnValidatorChange(fn: () => void): void; /** Hide placeholder */ hidePlaceholder(): void; /** Show control */ showSelectionControl(): void; /** Hide control */ hideSelectionControl(): void; /** Clear list of selected entities ids */ clearList(): void; /** Reset a list of selected entities ids to init value */ resetList(): void; /** Add or delete entity */ toggleEntity(keyValue: string): void; /** Change entity value */ changeEntity(data: { prev: string; new: string; }): void; /** Add new item */ onAddEntity(): void; /** Process move items in a list */ onDrop(event: CdkDragDrop>): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class RtuiMultiSelectorPopupComponent, KEY extends Extract> implements OnInit, AfterViewInit { #private; protected readonly oSTypes: typeof OSTypes; /** Indicates is mobile view */ isMobile: InputSignalWithTransform, Nullable>; entitiesToSelect: InputSignalWithTransform; /** Material elements appearance */ appearance: InputSignal; /** A model's field which should be used for http-requests */ keyExp: InputSignal; /** A model's field which should be shown in ui */ displayExp: InputSignal; /** Init search term value */ searchTerm: InputSignal; /** Navigation button title */ navigateButtonTitle: InputSignal; /** Navigation button link */ navigateLink: InputSignal; /** Indicates if only one option can be chosen */ isSingleSelection: InputSignalWithTransform; /** Indicates is change multi select mode toggle shown */ isMultiToggleShown: InputSignalWithTransform; /** Indicates is Select all button shown */ isSelectAllButtonShown: InputSignalWithTransform; /** Indicates that a list of entities is being loading */ loading: InputSignalWithTransform; /** Indicates that a list of entities is being fetching */ fetching: InputSignalWithTransform; /** Indicates is BreakStringPipe used */ useNameBreaking: InputSignalWithTransform; /** Indicates lazy loading is used */ isLazyLoad: InputSignalWithTransform, boolean>; /** Indicates local search is used */ isLocalSearch: InputSignalWithTransform, boolean>; /** Send output selected entities ids */ readonly submitAction: OutputEmitterRef; /** Close popup action */ readonly closeAction: OutputEmitterRef; /** Output search action */ readonly searchAction: OutputEmitterRef; /** Output scroll action, needed for lazy loading */ readonly scrollAction: OutputEmitterRef; /** Output temporary selection action, needed for store values */ readonly temporarySelectAction: OutputEmitterRef; /** Search input Ref for set focus on init */ readonly searchInputRef: Signal>>; /** Form control for search */ readonly searchControl: FormControl>; /** Form control for select */ readonly selectionControl: FormControl; /** Entities filtered by local search */ readonly filteredEntities: WritableSignal; /** Selected entities */ readonly selectedEntities: WritableSignal; /** Indicates is all available entities has been selected */ readonly isAllSelected: WritableSignal; /** Indicates is multi selection mode enabled */ readonly isMultiSelection: WritableSignal; /** Indicates is macOS used */ readonly isMacOS: Signal; ngOnInit(): void; /** Set focus on search input */ ngAfterViewInit(): void; /** Change Multi election mode */ toggleMultiSelection(): void; /** Toggle select all */ toggleSelectAll(value: boolean): void; /** Update selectionControl and isAllSelected checkbox state */ itemToggle(entity: ENTITY, checked: boolean): void; /** Proceed select action in multi selection mode */ onToggleItem(event: MouseEvent, entity: ENTITY, checked: boolean): void; /** Proceed select action in single selection mode */ onToggleSingleItem(entity: ENTITY, checked: boolean): void; /** Output action, selected entities ids */ onSubmit(): void; /** Close popup */ onClose(): void; /** Clear search */ onClearSearch(): void; /** Scroll action, needed for lazy loading mode */ scroll(): void; static ɵfac: i0.ɵɵFactoryDeclaration, never>; static ɵcmp: i0.ɵɵComponentDeclaration, "rtui-multi-selector-popup", never, { "isMobile": { "alias": "isMobile"; "required": true; "isSignal": true; }; "entitiesToSelect": { "alias": "entitiesToSelect"; "required": true; "isSignal": true; }; "appearance": { "alias": "appearance"; "required": true; "isSignal": true; }; "keyExp": { "alias": "keyExp"; "required": true; "isSignal": true; }; "displayExp": { "alias": "displayExp"; "required": true; "isSignal": true; }; "searchTerm": { "alias": "searchTerm"; "required": false; "isSignal": true; }; "navigateButtonTitle": { "alias": "navigateButtonTitle"; "required": false; "isSignal": true; }; "navigateLink": { "alias": "navigateLink"; "required": false; "isSignal": true; }; "isSingleSelection": { "alias": "isSingleSelection"; "required": false; "isSignal": true; }; "isMultiToggleShown": { "alias": "isMultiToggleShown"; "required": false; "isSignal": true; }; "isSelectAllButtonShown": { "alias": "isSelectAllButtonShown"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "fetching": { "alias": "fetching"; "required": false; "isSignal": true; }; "useNameBreaking": { "alias": "useNameBreaking"; "required": false; "isSignal": true; }; "isLazyLoad": { "alias": "isLazyLoad"; "required": false; "isSignal": true; }; "isLocalSearch": { "alias": "isLocalSearch"; "required": false; "isSignal": true; }; }, { "submitAction": "submitAction"; "closeAction": "closeAction"; "searchAction": "searchAction"; "scrollAction": "scrollAction"; "temporarySelectAction": "temporarySelectAction"; }, never, never, true, never>; } declare class RtuiDynamicSelectorPlaceholderComponent { icon: InputSignalWithTransform; description: InputSignalWithTransform; buttonTitle: InputSignalWithTransform; isButtonShow: InputSignalWithTransform; disabled: InputSignalWithTransform; isIconOutlined: InputSignalWithTransform; readonly submitAction: OutputEmitterRef; onSubmit(trigger: CdkOverlayOrigin): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class RtuiDynamicSelectorListActionsComponent { isMobile: InputSignalWithTransform, Nullable>; isResetButtonDisabled: InputSignalWithTransform; isClearButtonDisabled: InputSignalWithTransform; disabled: InputSignalWithTransform; readonly resetAction: OutputEmitterRef; readonly clearAction: OutputEmitterRef; onReset(): void; onClear(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } /** Directive for row actions located outside a row menu button */ declare class RtuiDynamicSelectorItemAdditionalControlDirective { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class RtuiDynamicSelectorSelectedListComponent, KEY extends Extract> { protected readonly editedItemIndex: WritableSignal>; readonly inputRef: Signal>; /** Indicates if mobile view */ isMobile: InputSignalWithTransform; /** A model's field, which should be used for http-requests */ keyExp: InputSignal; /** A model's field, which should be shown in ui */ displayExp: InputSignal; /** Array of selected entities */ selectedEntities: InputSignalWithTransform; /** Entity keys that can't be changed */ readonlyEntitiesKeys: InputSignalWithTransform; /** Indicates is a list of items draggable */ isListDraggable: InputSignalWithTransform; /** Indicates is break string pipe used */ useNameBreaking: InputSignalWithTransform; /** Indicates is title case pipe used */ useTitleCase: InputSignalWithTransform; /** Indicates is deleting entity button from the selected list shown */ isDeleteButtonShown: InputSignalWithTransform; /** Indicates is items editable */ isItemsEditable: InputSignalWithTransform; /** Material elements appearance */ appearance: InputSignal; readonly deleteFromSelectedAction: OutputEmitterRef; readonly dropAction: OutputEmitterRef>; readonly changeValueAction: OutputEmitterRef<{ prev: ENTITY[KEY]; new: string; }>; /** Additional control for entity */ readonly additionalControlTpl: Signal>>; protected onDelete(value: ENTITY[KEY]): void; protected onDrop(event: CdkDragDrop): void; protected changeValue(prev: ENTITY[KEY]): void; protected setEditModState(index: Nullable): void; static ɵfac: i0.ɵɵFactoryDeclaration, never>; static ɵcmp: i0.ɵɵComponentDeclaration, "rtui-dynamic-selector-selected-list", never, { "isMobile": { "alias": "isMobile"; "required": true; "isSignal": true; }; "keyExp": { "alias": "keyExp"; "required": true; "isSignal": true; }; "displayExp": { "alias": "displayExp"; "required": true; "isSignal": true; }; "selectedEntities": { "alias": "selectedEntities"; "required": true; "isSignal": true; }; "readonlyEntitiesKeys": { "alias": "readonlyEntitiesKeys"; "required": false; "isSignal": true; }; "isListDraggable": { "alias": "isListDraggable"; "required": false; "isSignal": true; }; "useNameBreaking": { "alias": "useNameBreaking"; "required": false; "isSignal": true; }; "useTitleCase": { "alias": "useTitleCase"; "required": false; "isSignal": true; }; "isDeleteButtonShown": { "alias": "isDeleteButtonShown"; "required": false; "isSignal": true; }; "isItemsEditable": { "alias": "isItemsEditable"; "required": false; "isSignal": true; }; "appearance": { "alias": "appearance"; "required": false; "isSignal": true; }; }, { "deleteFromSelectedAction": "deleteFromSelectedAction"; "dropAction": "dropAction"; "changeValueAction": "changeValueAction"; }, ["additionalControlTpl"], never, true, never>; } type IImageUploadFormat = 'png' | 'jpeg' | 'webp'; declare class RtuiImageUploadComponent { #private; protected readonly imageFormat: Signal; imageUrl: ModelSignal>; isMobile: InputSignalWithTransform; fileName: InputSignalWithTransform; isActive: InputSignalWithTransform; isSaveButtonShown: InputSignalWithTransform; isDownloadButtonEnabled: InputSignalWithTransform; isTooltipDisabled: InputSignalWithTransform; isActionsShown: InputSignalWithTransform; loading: InputSignalWithTransform; tooltip: InputSignal; tooltipPosition: InputSignal; imageQuality: InputSignal; originalImage: WritableSignal; croppedImage: WritableSignal>; tempImage: WritableSignal>; readonly imageChanged: OutputEmitterRef; readonly save: OutputEmitterRef; onFileSelect(event: Event): void; onImageCropped(event: ImageCroppedEvent): void; onFileUpload(file: File): void; onApply(): void; onCancel(): void; onDownloadImage(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } type MenuItemTrigger = 'click' | 'hover'; declare class RtPopoverDirective implements OnInit, OnDestroy { #private; xOffset: InputSignalWithTransform; yOffset: InputSignalWithTransform; trigger: InputSignalWithTransform; template: InputSignalWithTransform>, Nullable>>; isMouseHoverAllowed: InputSignalWithTransform; onClick(element: EventTarget | null): void; onMouseEnter(): void; onMouseLeave(): void; ngOnInit(): void; ngOnDestroy(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare namespace IRtActionBar { interface Config { selected?: number; total?: number; buttons?: IRtActionBar.Button[]; } interface Button { title: string; action?: (payload?: object) => void; icon?: string; menu?: IRtActionBar.Button[]; styles?: object; } } declare class RtuiActionBarComponent { #private; config: InputSignal; readonly closeAction: OutputEmitterRef; readonly isTablet: Signal; onClose(): void; onAction(button: IRtActionBar.Button): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class RtuiActionBarContainerComponent { #private; readonly config: Signal; closeBar(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class RtActionBarService { config: WritableSignal; setActions(buttons: IRtActionBar.Button[]): void; setCounts(selected: number, total: number): void; closeActionBar(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } export { ASIDE_BUTTONS_ENUM, ASIDE_REF, AsideRef, BASE_INITIAL_STATE, BUTTON_APPEARANCE, BUTTON_COLOR, BUTTON_SIZE, BaseAsyncStoreService, BaseMapper, BaseStoreService, BlockDirective, BreakStringPipe, BreakpointService, Breakpoints, CUSTOM_STORAGE, ConcatClassesPipe, DASH, DEFAULT_PAGE_MODEL, DEFAULT_PAGE_SIZE, DeviceDetectorService, ElemDirective, EmptyToDashPipe, EntityToStringPipe, EqualChainPipe, EqualPipe, FILTER_OPERATORS, FILTER_OPERATOR_TYPE_ENUM, HAS_OWN_SCOPE_ENUM, IAside, IDBStorageService, IDB_STORAGE_SERVICE_TOKEN, IModal, INFO_BADGE_SIZE_ENUM, INFO_BADGE_TYPE_ENUM, IN_MEMORY_STORAGE, IRtActionBar, IRtSnackBar, ISideMenu, IStateBase, ITable, InMemoryStorageService, JsonConverter, LIST_SORT_ORDER_ENUM, LOCAL_STORAGE, MODAL_WINDOW_SIZE_ENUM, MessageBus, ModDirective, ModelStatus, NAVIGATOR, NotEqualChainPipe, NotEqualPipe, OSTypes, OVERLAY_POSITIONS, PlatformService, RTUI_TABLE_COMPONENT_TOKEN, RTUI_TABLE_STOP_ROW_CLICK_ATTRIBUTE, RtActionBarService, RtAsideService, RtDynamicListSelectorsDirective, RtEscapeKeyDirective, RtHideTooltipDirective, RtIconOutlinedDirective, RtModalService, RtNavigationDirective, RtPopoverDirective, RtScrollDirective, RtScrollToElementDirective, RtSnackBarService, RtTabQueryParamDirective, RtTableConfigService, RtTableSelectorsDirective, RtuiActionBarComponent, RtuiActionBarContainerComponent, RtuiAsideContainerComponent, RtuiAsideContainerHeaderDirective, RtuiButtonComponent, RtuiClearButtonComponent, RtuiCustomTableCellsDirective, RtuiDynamicInputAdditionalControlDirective, RtuiDynamicInputComponent, RtuiDynamicListComponent, RtuiDynamicListCustomTableCellsDirective, RtuiDynamicListRowActionsDirective, RtuiDynamicListRowAdditionalActionsDirective, RtuiDynamicListToolbarActionsDirective, RtuiDynamicListToolbarSelectorsDirective, RtuiDynamicSelectorAdditionalControlDirective, RtuiDynamicSelectorComponent, RtuiDynamicSelectorItemAdditionalControlDirective, RtuiDynamicSelectorListActionsComponent, RtuiDynamicSelectorPlaceholderComponent, RtuiDynamicSelectorSelectedListComponent, RtuiFileUploadComponent, RtuiHeaderCenterDirective, RtuiHeaderComponent, RtuiHeaderLeftDirective, RtuiHeaderRightDirective, RtuiImageUploadComponent, RtuiInfoBadgeComponent, RtuiModalComponent, RtuiMultiButtonComponent, RtuiMultiSelectorPopupComponent, RtuiPaginationComponent, RtuiRoundIconButtonComponent, RtuiScrollableContainerComponent, RtuiScrollableContainerContentDirective, RtuiScrollableContainerFooterDirective, RtuiScrollableContainerHeaderDirective, RtuiSideMenuComponent, RtuiSideMenuFooterDirective, RtuiSideMenuHeaderDirective, RtuiSnackBarComponent, RtuiSpinnerComponent, RtuiStopTableRowClickDirective, RtuiTableAdditionalRowActionsDirective, RtuiTableComponent, RtuiTableRowActionsDirective, RtuiTableRowClickDirective, RtuiToggleComponent, RtuiToolbarCenterDirective, RtuiToolbarComponent, RtuiToolbarLeftDirective, RtuiToolbarRightDirective, SESSION_STORAGE, STORAGE_TYPES_ENUM, SanitizePipe, StorageService, TABLE_COLUMN_FILTER_TYPES_ENUM, TABLE_COLUMN_TYPES_ENUM, TEXT_CELL_COLOR_ENUM, TOGGLE_SIZE_TYPE_ENUM, TernaryPipe, TypeCastHelper, WINDOW, areArraysEqual, areArraysEqualUnordered, areObjectsEqual, arraysNotEmptyValidator, checkIsEntityInArrayByKey, checkIsMatchingValues, darkenHexColor, dateStringToDate, ddServices, debounce, emptyToDash, formatDate, getColorBasedOnBackground, hasPropertyInChain, iDBStorageFactory, inMemoryStorageFactory, initToday, isDate, isDateValid, isEmail, isEmpty, isEmptyArray, isEmptyObject, isEmptyString, isEqual, isNil, isNumber, isRecord, isString, isToday, localStorageFactory, parseDate, parseISO, progressDecreaseAnimation, progressIncreaseAnimation, provideRtIDBStorage, provideRtStorage, provideRtUi, provideRtUtils, removeFieldFromObject, safeComparatorPipe, safeCompare, safeNumCompare, safeStrCompare, sessionStorageFactory, sortByAlphabet, sortByDate, stringifyHttpLikeParams, transformArrayInput, transformStringInput }; export type { AnyObject, AsideButtonsType, AsidePositions, ButtonAppearanceType, ButtonColorType, ButtonSizeType, ComparatorType, EmptyObject, FilterModel, FilterOperatorType, IAction, IBaseAsyncStoreService, IBaseMapper, IBaseStoreService, IBemConfig, IBreakpoints, IDictionary, IHasScopeType, IIDBStorageServiceInterface, IImageUploadFormat, IInfoBadgeSizeType, IMapper, IModsObject, IRtuiTable, ISetPropertiesConfig, IStorageConfig, IStorageConverter, Icon, IconSideType, InfoBadgeType, IntersectionType, ListSortOrderType, ListState, MenuItemTrigger, MessageBusEvent, ModalWindowSizeType, Modify, NameValueType, Nullable, Optional, PageModel, PartialOmit, Primitive, Scriptable, ScriptableAndArray, ScriptableAndArrayOptions, ScriptableAndScriptableOptions, ScriptableOptions, Select, SortModel, StorageType, ToggleSizeType, ValuesType };