@100mslive/react-native-room-kit
Version:
100ms Room Kit provides simple & easy to use UI components to build Live Streaming & Video Conferencing experiences in your apps.
68 lines • 4.43 kB
TypeScript
import { HMSPeer, HMSTrack, HMSVideoTrack, HMSRole, HMSPollQuestionType } from '@100mslive/react-native-hms';
import type { HMSPoll, HMSPollQuestionAnswer, HMSPollQuestionResponse, HMSPollQuestion, HMSPollQuestionOption } from '@100mslive/react-native-hms';
import type { PeerTrackNode } from './types';
import * as React from 'react';
export declare const getMeetingUrl: () => string;
export declare const getMeetingCode: () => string;
export declare const getInitials: (name?: String) => String;
export declare const parseMetadata: (metadata?: string) => {
isBRBOn?: boolean;
prevRole?: string;
};
export declare const requestExternalStoragePermission: () => Promise<boolean>;
/**
* @param min minimum range value
* @param max maximum range value
* @returns value between min and max, min is inclusive and max is exclusive
*/
export declare const getRandomNumberInRange: (min: number, max: number) => number;
export declare const getRandomUserId: (length: number) => string;
export declare const getPeerNodes: (peerTrackNodes: PeerTrackNode[], peerID: string) => PeerTrackNode[];
export declare const getPeerTrackNodes: (peerTrackNodes: PeerTrackNode[], peer: HMSPeer, track?: HMSTrack) => PeerTrackNode[];
export declare const updatedDegradedFlag: (peerTrackNodes: PeerTrackNode[], isDegraded: boolean) => PeerTrackNode[];
export declare const updatePeerTrackNodes: (peerTrackNodes: PeerTrackNode[], peer: HMSPeer, track: HMSTrack) => PeerTrackNode[];
export declare const updatePeerNodes: (peerTrackNodes: PeerTrackNode[], peer: HMSPeer) => PeerTrackNode[];
export declare const createPeerTrackNode: (peer: HMSPeer, track?: HMSTrack) => PeerTrackNode;
export declare const replacePeerTrackNodes: (latestPeerTrackNodes: PeerTrackNode[], updatedPeerTrackNodes: PeerTrackNode[]) => PeerTrackNode[];
export declare const isPortrait: () => boolean;
export declare const validateUrl: (url?: string) => boolean;
export declare const pairData: (unGroupedPeerTrackNodes: PeerTrackNode[], batch: number, spotlightVideoTrackId?: string | null) => PeerTrackNode[][];
export declare const isTileOnSpotlight: (spotlightTrackId: string | undefined | null, peerTracks: {
tileVideoTrack?: HMSVideoTrack;
peerRegularAudioTrack?: HMSTrack;
peerAuxTracks?: HMSTrack[];
}) => {
onSpotlight: boolean;
tileVideoTrackId: string | undefined;
tileAudioTrackId: string | undefined;
};
export declare const getDisplayTrackDimensions: (peersInPage: number, top: number, bottom: number, isPortraitOrientation: boolean) => {
height: number;
width: string;
};
export declare const getTrackForPIPView: (pairedPeers: PeerTrackNode[][]) => PeerTrackNode | undefined;
export declare const getTime: (millisecs: number) => [number, number, number];
export declare const getTimeStringin12HourFormat: (time: Date) => string;
/**
* @param totalNumber total number of tiles
* @returns list of pairs that can be made from total number of tiles
*
* Example: If totalNumber is `5`, then output will be = `[ [0, 1], [2, 3], [4] ]`;
*/
export declare function groupIntoPairs(totalNumber: number): number[][];
/**
* @param list array of items
* @param fill boolean to fill the last triplet with `undefined` if it has less than 3 items
* @returns list of triplets
*
* Example: If list is `[a, b, c, d]`, then output will be `[ [a, b, c], [d] ]`
*/
export declare function groupIntoTriplets<T>(list: T[], fill?: boolean): (T | undefined)[][];
export declare const isParticipantHostOrBroadcaster: (role: HMSRole) => boolean;
export declare const visiblePollsSelector: (polls: HMSPoll[], isHLSViewer: boolean, hlsCuedPollIds: HMSPoll["pollId"][]) => HMSPoll[];
export declare function checkIsSelected(pollQuestion: HMSPollQuestion, option: HMSPollQuestionOption, selectedOptions: number | number[] | null): boolean;
export declare function checkIsCorrectAnswer(questionType: HMSPollQuestionType, myResponses: HMSPollQuestionResponse[] | undefined, answer: HMSPollQuestionAnswer | undefined): boolean;
export declare function checkIsCorrectOption(questionType: HMSPollQuestionType, option: HMSPollQuestionOption, answer: HMSPollQuestionAnswer | undefined): boolean;
export declare function getLabelFromPollQuestionType(type: HMSPollQuestionType): string;
export declare function splitLinksAndContent(text: string, { pressHandler, style }: any): string | (string | React.ReactElement)[];
//# sourceMappingURL=functions.d.ts.map