import { Store } from '../../../store/store';
import { UserDevice } from '@river-build/encryption';
import { PersistedObservable } from '../../../observable/persistedObservable';
import { RiverConnection } from '../../river-connection/riverConnection';
export interface UserMetadataModel {
    id: string;
    streamId: string;
    initialized: boolean;
    deviceId?: string;
    deviceKeys: UserDevice[];
}
export declare class UserMetadata extends PersistedObservable<UserMetadataModel> {
    private riverConnection;
    constructor(id: string, store: Store, riverConnection: RiverConnection);
    protected onLoaded(): void;
    private onClientStarted;
    private onStreamInitialized;
    private onUserMetadataUpdated;
    private initialize;
}
//# sourceMappingURL=userMetadata.d.ts.map