import type { MaybePromise } from '@remote-ui/rpc'; export type Subscriber = (value: T) => unknown; export type RemoteSubscribeResult = [() => void, T]; export interface SyncSubscribable { readonly current: T; subscribe(subscriber: Subscriber): () => void; } export interface RemoteSubscribable { readonly initial: T; subscribe(subscriber: Subscriber): MaybePromise>; } export interface StatefulRemoteSubscribable extends SyncSubscribable { destroy(): Promise; } //# sourceMappingURL=types.d.ts.map