import { Signal } from "@angular/core"; import { SdServiceEventListenerBase } from "@simplysm/sd-service-common"; import * as i0 from "@angular/core"; export interface ISharedSignal> extends Signal { $get(key: T["__valueKey"] | undefined): T | undefined; } export declare abstract class SdSharedDataProvider>> { private readonly _sdServiceFactory; private readonly _infoMap; loadingCount: number; abstract initialize(): void; register(name: K, getter: ISharedDataInfo): void; emitAsync(name: K, changeKeys?: T[K]["__valueKey"][]): Promise; wait(): Promise; getSignal(name: K): ISharedSignal; private _loadDataAsync; private _ordering; static ɵfac: i0.ɵɵFactoryDeclaration, never>; static ɵprov: i0.ɵɵInjectableDeclaration>; } export interface ISharedDataInfo> { serviceKey: string; getDataAsync: (changeKeys?: T["__valueKey"][]) => Promise; orderBy: [(data: T) => any, "asc" | "desc"][]; filter?: any; } export interface ISharedDataBase { __valueKey: VK; __searchText: string; __isHidden: boolean; __parentKey?: VK; } export declare class SdSharedDataChangeEvent extends SdServiceEventListenerBase<{ name: string; filter: any; }, (string | number)[] | undefined> { }