insite-subscriptions-client
Version:
inSite subscriptions client side
31 lines • 1.51 kB
TypeScript
import EventEmitter from "eventemitter3";
import { StatefulPromise } from "@nesvet/n";
import type { SubscriptionGroup } from "./SubscriptionGroup";
import type { Definition, SubscriptionType, SubscriptionUpdated, SubscriptionValue } from "./types";
export declare class SubscriptionGroupItem<T extends SubscriptionType = SubscriptionType, D extends Definition<T> = Definition<T>> extends EventEmitter {
#private;
constructor(definition: D, group: SubscriptionGroup);
name: string;
group?: SubscriptionGroup;
value?: SubscriptionValue<T>;
type: T | "object";
publicationName: Definition<T>["publicationName"];
params: Definition<T>["params"];
handle: Definition<T>["handle"];
onBeforeInit: Definition<T>["onBeforeInit"];
preventBind: Definition<T>["preventBind"];
emitUpdate: (updated?: SubscriptionUpdated<T>) => void;
isLoaded: boolean;
isInited: boolean;
define(definition: Definition<T>, group?: SubscriptionGroup | undefined): void;
detach(): void;
loaded(): StatefulPromise<SubscriptionGroupItem<T, D>>;
inited(): StatefulPromise<SubscriptionGroupItem<T, D>>;
unloaded(): StatefulPromise<SubscriptionGroupItem<T, D>>;
subscribe(): void;
unsubscribe(): void | undefined;
renew(publicationName: Definition<T>["publicationName"], params: Definition<T>["params"]): void | undefined;
valueOf(): SubscriptionValue<T> | undefined;
static debounceLimit: number;
}
//# sourceMappingURL=SubscriptionGroupItem.d.ts.map