import { ComputedRef, Ref } from 'vue';
import type { BaseSyncModel, UserInfo } from '../../../../core/src';
export interface PresenceComposable {
    users: ComputedRef<UserInfo[]>;
    userMap: Ref<Map<number, UserInfo>>;
    activeCount: ComputedRef<number>;
    localUser: ComputedRef<UserInfo | undefined>;
    otherUsers: ComputedRef<UserInfo[]>;
    isAlone: ComputedRef<boolean>;
    userColors: Ref<Map<string, string>>;
}
export declare function usePresence(model: BaseSyncModel): PresenceComposable;
export declare function useActiveUsers(model: BaseSyncModel): ComputedRef<number>;
export declare function useOtherUsers(model: BaseSyncModel): ComputedRef<UserInfo[]>;
export declare function useUserColors(model: BaseSyncModel): Ref<Map<string, string>>;
