import { DataInterface, EventCallbacksWithAny, EventPayloads, Id } from "./data-interface"; /** * [[DataSet]] code that can be reused in [[DataView]] or other similar implementations of [[DataInterface]]. * * @typeParam Item - Item type that may or may not have an id. * @typeParam IdProp - Name of the property that contains the id. */ export declare abstract class DataSetPart implements Pick, "on" | "off"> { private readonly _subscribers; protected _trigger(event: "add", payload: EventPayloads["add"], senderId?: Id | null): void; protected _trigger(event: "update", payload: EventPayloads["update"], senderId?: Id | null): void; protected _trigger(event: "remove", payload: EventPayloads["remove"], senderId?: Id | null): void; /** @inheritDoc */ on(event: "*", callback: EventCallbacksWithAny["*"]): void; /** @inheritDoc */ on(event: "add", callback: EventCallbacksWithAny["add"]): void; /** @inheritDoc */ on(event: "remove", callback: EventCallbacksWithAny["remove"]): void; /** @inheritDoc */ on(event: "update", callback: EventCallbacksWithAny["update"]): void; /** @inheritDoc */ off(event: "*", callback: EventCallbacksWithAny["*"]): void; /** @inheritDoc */ off(event: "add", callback: EventCallbacksWithAny["add"]): void; /** @inheritDoc */ off(event: "remove", callback: EventCallbacksWithAny["remove"]): void; /** @inheritDoc */ off(event: "update", callback: EventCallbacksWithAny["update"]): void; /** * @deprecated Use on instead (PS: DataView.subscribe === DataView.on). */ subscribe: DataSetPart["on"]; /** * @deprecated Use off instead (PS: DataView.unsubscribe === DataView.off). */ unsubscribe: DataSetPart["off"]; get testLeakSubscribers(): any; } //# sourceMappingURL=data-set-part.d.ts.map