UNPKG

@convo-lang/convo-lang

Version:
21 lines (20 loc) 723 B
import { ObjWatchEvt } from "@iyio/common"; export interface ObjectBindingOptions<T extends Record<string, any>> { obj: T; } export declare abstract class ObjectBinding<T extends Record<string, any>> { readonly obj: T; private readonly disposeListener; constructor({ obj, }: ObjectBindingOptions<T>); private _isDisposed; get isDisposed(): boolean; dispose(): void; protected _dispose(): void; abstract sync(evt: ObjWatchEvt<T>): void; } export declare class FnObjectBinding<T extends Record<string, any>> extends ObjectBinding<T> { private readonly _sync; constructor(obj: T, sync: (evt: ObjWatchEvt<T>) => void); private deferredEvt; sync(evt: ObjWatchEvt<T>): void; }