import { Ref } from 'vue';
import { Channel, Message, User } from './sdk';
import { FileType, VChatCloudAppProps } from './type';
export declare const time: (messageDt: string) => string;
export declare const nowTimeToString: () => string;
export declare const calcAbsolutePosition: (event: MouseEvent) => {
    left: number;
    top: number;
};
export declare const isEmailValid: (email: string) => boolean;
export declare const setProfileIndex: (props: VChatCloudAppProps, number: number) => VChatCloudAppProps;
export declare const getProfileIndex: (obj: Message | VChatCloudAppProps | User) => number;
export declare const getDownloadUrl: () => string;
export declare const getSize: (size: number) => string;
export declare const fileTypeCheck: (fileExt: string) => FileType;
export declare const getEmoticon: (listIndex: number, selectedCategoryIndex: number) => string;
export declare const getEmoticonTab: (emoticonIndex: number, selectedCategoryIndex: number) => string;
export declare const sendEmoticon: (listIndex: number, selectedCategoryIndex: number) => {
    categoryIndexString: string;
    indexString: string;
};
export declare const uploadFile: (file: File | null, channel: Ref<Channel>, isPrivate: boolean) => Promise<void>;
export declare const reportUser: (message: Message) => Promise<void>;
/**
 * 10자리 랜덤 문자열 생성
 *
 * 생성한 값은 localStorage에 "clientKey"에 저장됩니다.
 *
 * @returns 10자리 랜덤 문자열
 */
export declare const setRandomClientKey: () => string;
