@towns-protocol/sdk
Version:
For more details, visit the following resources:
29 lines • 1.11 kB
TypeScript
import { MembershipOp } from '@towns-protocol/proto';
import { PersistedObservable } from '../../../observable/persistedObservable';
import { Store } from '../../../store/store';
import { RiverConnection } from '../../river-connection/riverConnection';
export interface UserMembership {
streamId: string;
op: MembershipOp;
inviter?: string;
streamParentId?: string;
}
export interface UserMembershipsModel {
id: string;
streamId: string;
initialized: boolean;
memberships: Record<string, UserMembership>;
}
export declare class UserMemberships extends PersistedObservable<UserMembershipsModel> {
private riverConnection;
constructor(id: string, store: Store, riverConnection: RiverConnection);
protected onLoaded(): void;
private onClientStarted;
getMembership(streamId: string): UserMembership | undefined;
isMember(streamId: string, membership: MembershipOp): boolean;
isJoined(streamId: string): boolean;
private initialize;
private onStreamInitialized;
private onUserStreamMembershipChanged;
}
//# sourceMappingURL=userMemberships.d.ts.map