/// <reference types="vscode" />
/// <reference types="src/typings/vscode.proposed" />
export declare type TUserPresenceStatus = 'active' | 'away' | 'unknown';
interface IUserPresenceStatus {
    userId: string;
    status: TUserPresenceStatus;
}
export declare class SlackUserStatusRepository {
    private slackApiMap;
    private userStatusesMap;
    private userStatusRequestsMap;
    private eventsEmitter;
    onUserStatus: import("vscode").Event<IUserPresenceStatus>;
    private getApi;
    getUserStatus: (userId: string, accountName: string) => Promise<void>;
    private requestUserStatus;
    private emitUserStatus;
    getCachedStatus: (userId: string) => IUserPresenceStatus;
    refreshStatuses: () => Promise<void>;
}
export declare const slackUserStatusRepository: SlackUserStatusRepository;
export {};
//# sourceMappingURL=slackUserStatusRepository.d.ts.map