import { ErrorHandler, type Signal, type WritableSignal } from "@angular/core"; import { SdServiceClientFactoryProvider } from "../service-client/sd-service-client-factory.provider"; import "@simplysm/core-common"; import * as i0 from "@angular/core"; export interface SharedDataBase { __valueKey: TKey; __searchText: string; __isHidden: boolean; __parentKey?: TKey; } export interface SharedDataInfo> { serviceKey: string; getter: (changeKeys?: (string | number)[]) => Promise; filter?: unknown; orderBy?: (a: T, b: T) => number; } export interface SharedDataHandle> { items: Signal; get(key: T["__valueKey"] | undefined): T | undefined; } export declare const SdSharedDataChangeEvent: import("@simplysm/service-common").ServiceEventDef<{ name: string; filter: unknown; }, (string | number)[] | undefined>; export declare abstract class SdSharedDataProvider>> { protected readonly _sdServiceClientFactory: SdServiceClientFactoryProvider; protected readonly _errorHandler: ErrorHandler; readonly loadingCount: WritableSignal; private readonly _entries; abstract initialize(): void; register(name: K, info: SharedDataInfo): void; getHandle(name: K): SharedDataHandle; emitAsync(name: K, changeKeys?: (string | number)[]): Promise; wait(): Promise; private _loadAndListen; private _onEvent; static ɵfac: i0.ɵɵFactoryDeclaration, never>; static ɵprov: i0.ɵɵInjectableDeclaration>; } //# sourceMappingURL=sd-shared-data.provider.d.ts.map