import React from 'react';
import { SendMessageArgs, MessageType, LocaleValue } from '../types/interfaces';
import WS, { Protocol } from '../core/ws';
export declare const useLang: () => {
    lang: LocaleValue;
    changeLang: (e: React.ChangeEvent<HTMLSelectElement>) => void;
};
export declare const useVideoRecord: ({ roomId, userId, ws, buttonDisabled, setButtonDisabled, }: {
    roomId: string | number;
    userId: string | number;
    ws: WS;
    buttonDisabled: boolean;
    setButtonDisabled: React.Dispatch<React.SetStateAction<boolean>>;
}) => {
    recordStartWrapper: (command: SendMessageArgs<MessageType.GET_RECORD>['data']['command']) => () => void;
};
export declare const useSettingsStyle: () => {
    settingsRef: React.RefObject<HTMLDivElement>;
    settingStyle: string | undefined;
};
export declare const usePlayVideo: ({ server, port, roomId, }: {
    server: string;
    port: number;
    roomId: string | number;
}) => {
    playVideoWrapper: (videoName: string) => () => void;
    playedVideo: string;
    handleCloseVideo: () => void;
};
export declare const useDeleteVideo: () => {
    deleteVideoWrapper: (videoId: number) => () => void;
};
export declare const useMessages: ({ roomId, userId, server, port, protocol, token, }: {
    roomId: string | number;
    userId: string | number;
    server: string;
    port: number;
    protocol: Protocol;
    token: string;
}) => {
    videos: import(".prisma/client").Video[];
    time: string;
    started: boolean;
    buttonDisabled: boolean;
    setButtonDisabled: React.Dispatch<React.SetStateAction<boolean>>;
    ws: WS;
};
