export declare type LocalAvatarInfo = { fileName: string; fileSize: number; fileHashMD5: string; fileUploaded: number; fileModified: number; contentType: string; resourceUrl: string | undefined; }; export declare type LocalAvatarUpdateResult = { status: "success"; } | { status: "error"; reason: string; } | { status: "cache-unavailable"; }; export declare type LocalAvatarLoadResult = { status: "success"; result: T; } | { status: "error"; reason: string; } | { status: "cache-unavailable" | "empty-result"; }; export declare type OwnAvatarMode = "uploading" | "server"; export declare class OwnAvatarStorage { private openedCache; private static generateRequestUrl; initialize(): Promise; private loadAvatarRequest; loadAvatarImage(serverUniqueId: string, mode: OwnAvatarMode): Promise>; loadAvatar(serverUniqueId: string, mode: OwnAvatarMode, createResourceUrl: boolean): Promise>; updateAvatar(serverUniqueId: string, mode: OwnAvatarMode, target: File): Promise; removeAvatar(serverUniqueId: string, mode: OwnAvatarMode): Promise; /** * Move the avatar file which is currently in "uploading" state to server * @param serverUniqueId */ avatarUploadSucceeded(serverUniqueId: string): Promise; } export declare function getOwnAvatarStorage(): OwnAvatarStorage;