Skip to main content

Props

ButtonBaseProps

Base props for every button component — every standard HTML button attribute plus the optional class-name overrides.

interface ButtonBaseProps {
classNames?: ButtonClassNames;
}

ConnectionErrorProps

Props for the connection-error component. The lifecycle hooks (useCreateCall / useJoinCall / useBroadcast) never throw — a failed call/broadcast is reported as status === "error" plus an error value. Pass both straight through; the component renders only on "error".

interface ConnectionErrorProps {
children?: React.ReactNode;
error: unknown;
label?: string;
status: string;
}

CreateCallButtonProps

Props for the create-call button.

interface CreateCallButtonProps {
classNames?: ButtonClassNames;
callOptions: CallOptions;
setCall: object;
}

EchoPillarboxVideoProps

Props accepted by the pillarbox background video — passes through every standard HTML video attribute.

type EchoPillarboxVideoProps = React.VideoHTMLAttributes<HTMLVideoElement>
React.VideoHTMLAttributes

EchoPillarboxWrapperProps

Props accepted by the pillarbox wrapper — passes through every standard HTML div attribute.

type EchoPillarboxWrapperProps = React.HTMLAttributes<HTMLDivElement>
React.HTMLAttributes

EndBroadcastButtonProps

Props for the end-broadcast button.

interface EndBroadcastButtonProps {
classNames?: ButtonClassNames;
onDisposed: object;
}

EndCallButtonProps

Props for the end-call button.

interface EndCallButtonProps {
classNames?: ButtonClassNames;
onDisposed: object;
}

JoinCallButtonProps

Props for the join-call button.

interface JoinCallButtonProps {
classNames?: ButtonClassNames;
callId: string;
joinCallOptions: CallOptions;
setCall: object;
}

PeerMutedBadgeProps

Props for the peer-muted badge — passes through every standard HTML div attribute plus the optional class-name overrides.

interface PeerMutedBadgeProps {
}

PeerVideoProps

Props for PeerVideo. Renders one remote peer-stream as a video, wiring the peer and player contexts so children (e.g. PeerMutedBadge) and the standard player controls work without extra providers.

interface PeerVideoProps {
classNames?: VideoClassNames;
children?: React.ReactNode;
peerStream: indexedAccess;
requestPlayerOptions?: RequestPlayerOptions;
}

PosterImageProps

Props for the poster-image component — passes through every standard HTML img attribute.

type PosterImageProps = React.ImgHTMLAttributes<HTMLImageElement>
React.ImgHTMLAttributes

RangeBaseProps

Base props for every range input — every standard HTML input attribute plus the optional class-name overrides.

interface RangeBaseProps {
classNames?: RangeClassNames;
}

SelectBaseProps

Base props for every select input — every standard HTML select attribute plus the optional class-name overrides.

interface SelectBaseProps {
classNames?: SelectClassNames;
}

StartBroadcastButtonProps

Props for the start-broadcast button.

interface StartBroadcastButtonProps {
classNames?: ButtonClassNames;
broadcastOptions: BroadcastOptions;
setBroadcast: object;
}

ToggleCameraButtonProps

Props for the toggle-camera button — children and button props for each state of the camera (cameraDisabled shown when video is currently on, cameraEnabled shown when video is off).

type ToggleCameraButtonProps = {
cameraDisabled?: object;
cameraEnabled?: object;
}

ToggleMicButtonProps

Props for the toggle-mic button — children and button props for each state of the microphone.

type ToggleMicButtonProps = {
micDisabled?: object;
micEnabled?: object;
}

ToggleMuteButtonProps

Props for the toggle-mute button — children and button props for each playback mute state.

type ToggleMuteButtonProps = {
mute?: object;
unmute?: object;
}

TogglePlayButtonProps

Props for the toggle-play button — children and button props for each playback state.

type TogglePlayButtonProps = {
paused?: object;
playing?: object;
}

VideoProps

Props for the video component — every standard HTML video attribute plus the optional class-name overrides.

interface VideoProps {
classNames?: VideoClassNames;
}