UNPKG

uyem

Version:
76 lines (75 loc) 2.15 kB
import { Video } from '@prisma/client'; import React from 'react'; import { Colors, Theme } from '../Theme'; import { LocaleServer, LogLevel } from './interfaces'; export declare type VideoFull = Video; export interface GlobalProps { server: string; roomId: string | number; port: number; userId: string | number; name?: string; token?: string; theme?: Theme; videoRecord?: boolean; iceServers?: RTCConfiguration['iceServers']; colors?: Colors; logLevel?: LogLevel; backLinks?: React.ReactNode | React.ReactNode[] | string | null; } export declare type RoomProps = GlobalProps & { locale: LocaleServer['client']; }; export declare type HallProps = Required<Omit<GlobalProps, 'iceServers' | 'theme' | 'colors' | 'logLevel'>> & { open: boolean; locale: LocaleServer['client']; theme?: Theme; }; export declare type SettingsProps = Required<Omit<GlobalProps, 'iceServers' | 'theme' | 'colors' | 'logLevel' | 'backLinks'>> & { open: boolean; locale: LocaleServer['client']; theme?: Theme; }; export declare type ChatProps = Omit<HallProps, 'open' | 'backLinks' | 'videoRecord'>; export interface Stream { target: number | string; name: string; isOwner: boolean; stream: MediaStream; connId: string; ref: React.Ref<HTMLVideoElement>; hidden?: boolean; } export interface AlertProps { children: string; type: keyof typeof LogLevel; open: boolean; theme?: Theme; } export declare type DialogPropsDefaultContext = { id: number; unitId: string; text: string; }; export declare type DialogPropsUsersContext = { unitId: string; isOwner: boolean; }; export interface DialogProps<T> { open: boolean; children: React.ReactNode; clientX: number; clientY: number; width: number; height: number; context: T; secure?: boolean; theme?: Theme; } export declare type ThemeType = 'light' | 'dark'; export declare type ClickPosition = { clientX: number; clientY: number; }; export declare type Volumes = Record<string, number>; export declare type VideoRecorderState = 'start' | 'stop';