uyem
Version:
WebRTC client-server SFU application
39 lines (38 loc) • 2.05 kB
TypeScript
import React from 'react';
import { Locale, MessageFull, MessageType, SendMessageArgs } from '../types/interfaces';
import { DialogProps, DialogPropsDefaultContext } from '../types';
export declare const useMesages: ({ port, server, roomId, userId, containerRef, inputRef, locale, }: {
port: number;
server: string;
roomId: string | number;
userId: string | number;
containerRef: React.RefObject<HTMLDivElement>;
inputRef: React.RefObject<HTMLTextAreaElement>;
locale: Locale.Client;
}) => {
changeText: (e: React.FormEvent<HTMLTextAreaElement>) => void;
blocked: boolean;
sendMessage: () => void;
messages: MessageFull[];
message: string;
rows: number;
clickQuoteWrapper: (context: DialogProps<DialogPropsDefaultContext>['context']) => () => void;
clickEditWrapper: (context: DialogProps<DialogPropsDefaultContext>['context']) => () => void;
clickDeleteWrapper: (context: DialogProps<DialogPropsDefaultContext>['context']) => () => void;
isEdit: boolean;
error: "initial" | "roomIsInactive" | "errorSendMessage" | "youAreBanned" | "videoRecordStop" | "forbidden" | "notAuthorised" | "duplicateTab" | "errorDeleteMessage" | "errorSetAdmin" | "errorToBan" | "errorToMute" | "errorToOffCamera" | undefined;
editMessage: MessageFull | undefined;
onClickCloseEditMessage: () => void;
quoteMessage: MessageFull | undefined;
textAreaLeft: () => 5 | 16;
clickBlockChatWrapper: (context: DialogProps<DialogPropsDefaultContext>['context']) => () => void;
};
export declare const useDialog: () => {
dialog: Omit<DialogProps<DialogPropsDefaultContext>, "children">;
messageContextWrapper: (item: MessageFull, secure: boolean) => (ev: React.MouseEvent<HTMLDivElement, MouseEvent>) => void;
};
export declare const useScrollToQuote: ({ containerRef, messages, }: {
containerRef: React.RefObject<HTMLDivElement>;
messages: SendMessageArgs<MessageType.SET_CHAT_MESSAGES>['data']['result'];
}) => {};
export declare const useRoomIsInactive: () => boolean;