Do not edit this file. It is a report generated by API Extractor.
import { AudioAnalyserOptions } from 'livekit-client';
import { AudioCaptureOptions } from 'livekit-client';
import { ChatMessage } from 'livekit-client';
import { ConnectionQuality } from 'livekit-client';
import { ConnectionState as ConnectionState_2 } from 'livekit-client';
import { CreateLocalTracksOptions } from 'livekit-client';
import { DataPublishOptions } from 'livekit-client';
import { DisconnectReason } from 'livekit-client';
import { HTMLAttributes } from 'react';
import { LocalAudioTrack } from 'livekit-client';
import { LocalParticipant } from 'livekit-client';
import { LocalTrack } from 'livekit-client';
import { LocalTrackPublication } from 'livekit-client';
import { LocalVideoTrack } from 'livekit-client';
import { MediaDeviceFailure } from 'livekit-client';
import { Participant } from 'livekit-client';
import { ParticipantEvent } from 'livekit-client';
import type { ParticipantKind } from 'livekit-client';
import { ParticipantPermission } from '@livekit/protocol';
import * as React_2 from 'react';
import { RemoteAudioTrack } from 'livekit-client';
import { RemoteParticipant } from 'livekit-client';
import { Room } from 'livekit-client';
import { RoomConnectOptions } from 'livekit-client';
import { RoomEvent } from 'livekit-client';
import { RoomOptions } from 'livekit-client';
import { ScreenShareCaptureOptions } from 'livekit-client';
import { setLogLevel as setLogLevel_2 } from 'livekit-client';
import { SVGProps } from 'react';
import { Track } from 'livekit-client';
import { TrackProcessor } from 'livekit-client';
import { TrackPublication } from 'livekit-client';
import { TrackPublishOptions } from 'livekit-client';
import { TranscriptionSegment } from 'livekit-client';
import { VideoCaptureOptions } from 'livekit-client';
// @beta (undocumented)
export type AgentState = 'disconnected' | 'connecting' | 'initializing' | 'listening' | 'thinking' | 'speaking';
// @public (undocumented)
export interface AllowAudioPlaybackProps extends React_2.ButtonHTMLAttributes<HTMLButtonElement> {
// (undocumented)
label: string;
}
// @public (undocumented)
export interface AllowMediaPlaybackProps extends React_2.ButtonHTMLAttributes<HTMLButtonElement> {
// (undocumented)
label?: string;
}
// @public
export function AudioConference({ ...props }: AudioConferenceProps): React_2.JSX.Element;
// @public (undocumented)
export interface AudioConferenceProps extends React_2.HTMLAttributes<HTMLDivElement> {
}
// @public
export const AudioTrack: (props: AudioTrackProps & React_2.RefAttributes<HTMLAudioElement>) => React_2.ReactNode;
// @public (undocumented)
export interface AudioTrackProps extends React_2.AudioHTMLAttributes<HTMLAudioElement> {
// @alpha
muted?: boolean;
// (undocumented)
onSubscriptionStatusChanged?: (subscribed: boolean) => void;
trackRef?: TrackReference;
volume?: number;
}
// @public @deprecated
export const AudioVisualizer: (props: AudioVisualizerProps & React_2.RefAttributes<SVGSVGElement>) => React_2.ReactNode;
// @public @deprecated (undocumented)
export interface AudioVisualizerProps extends React_2.HTMLAttributes<SVGElement> {
// (undocumented)
trackRef?: TrackReference;
}
// @alpha (undocumented)
export interface AudioWaveformOptions {
// (undocumented)
barCount?: number;
// (undocumented)
updateInterval?: number;
// (undocumented)
volMultiplier?: number;
}
// @beta
export const BarVisualizer: React_2.ForwardRefExoticComponent<Omit<BarVisualizerProps, "ref"> & React_2.RefAttributes<HTMLDivElement>>;
// @beta (undocumented)
export type BarVisualizerOptions = {
maxHeight?: number;
minHeight?: number;
};
// @beta (undocumented)
export interface BarVisualizerProps extends React_2.HTMLProps<HTMLDivElement> {
barCount?: number;
children?: React_2.ReactNode;
// (undocumented)
options?: BarVisualizerOptions;
state?: AgentState;
// (undocumented)
trackRef?: TrackReferenceOrPlaceholder;
}
// Warning: (ae-internal-missing-underscore) The name "CameraDisabledIcon" should be prefixed with an underscore because the declaration is marked as @internal
//
// @internal (undocumented)
export const CameraDisabledIcon: (props: SVGProps<SVGSVGElement>) => React_2.JSX.Element;
// Warning: (ae-internal-missing-underscore) The name "CameraIcon" should be prefixed with an underscore because the declaration is marked as @internal
//
// @internal (undocumented)
export const CameraIcon: (props: SVGProps<SVGSVGElement>) => React_2.JSX.Element;
// @public
export function CarouselLayout({ tracks, orientation, ...props }: CarouselLayoutProps): React_2.JSX.Element;
// @public (undocumented)
export interface CarouselLayoutProps extends React_2.HTMLAttributes<HTMLMediaElement> {
// (undocumented)
children: React_2.ReactNode;
orientation?: 'vertical' | 'horizontal';
// (undocumented)
tracks: TrackReferenceOrPlaceholder[];
}
// @public
export function Chat({ messageFormatter, messageDecoder, messageEncoder, channelTopic, ...props }: ChatProps): React_2.JSX.Element;
// Warning: (ae-internal-missing-underscore) The name "ChatCloseIcon" should be prefixed with an underscore because the declaration is marked as @internal
//
// @internal (undocumented)
export const ChatCloseIcon: (props: SVGProps<SVGSVGElement>) => React_2.JSX.Element;
// @public
export const ChatEntry: (props: ChatEntryProps & React_2.RefAttributes<HTMLLIElement>) => React_2.ReactNode;
// @public
export interface ChatEntryProps extends React_2.HTMLAttributes<HTMLLIElement> {
entry: ReceivedChatMessage;
hideName?: boolean;
hideTimestamp?: boolean;
messageFormatter?: MessageFormatter;
}
// Warning: (ae-internal-missing-underscore) The name "ChatIcon" should be prefixed with an underscore because the declaration is marked as @internal
//
// @internal (undocumented)
export const ChatIcon: (props: SVGProps<SVGSVGElement>) => React_2.JSX.Element;
export { ChatMessage }
// Warning: (ae-forgotten-export) The symbol "ChatOptions" needs to be exported by the entry point index.d.ts
//
// @public (undocumented)
export interface ChatProps extends React_2.HTMLAttributes<HTMLDivElement>, ChatOptions {
// (undocumented)
messageFormatter?: MessageFormatter;
}
// @public
export const ChatToggle: (props: ChatToggleProps & React_2.RefAttributes<HTMLButtonElement>) => React_2.ReactNode;
// @public (undocumented)
export interface ChatToggleProps extends React_2.ButtonHTMLAttributes<HTMLButtonElement> {
}
// Warning: (ae-internal-missing-underscore) The name "Chevron" should be prefixed with an underscore because the declaration is marked as @internal
//
// @internal (undocumented)
export const Chevron: (props: SVGProps<SVGSVGElement>) => React_2.JSX.Element;
// @public
export const ClearPinButton: (props: ClearPinButtonProps & React_2.RefAttributes<HTMLButtonElement>) => React_2.ReactNode;
// @public (undocumented)
export interface ClearPinButtonProps extends React_2.ButtonHTMLAttributes<HTMLButtonElement> {
}
// @public
export const ConnectionQualityIndicator: (props: ConnectionQualityIndicatorProps & React_2.RefAttributes<HTMLDivElement>) => React_2.ReactNode;
// @public (undocumented)
export interface ConnectionQualityIndicatorOptions {
// (undocumented)
participant?: Participant;
}
// @public (undocumented)
export interface ConnectionQualityIndicatorProps extends React_2.HTMLAttributes<HTMLDivElement>, ConnectionQualityIndicatorOptions {
}
// @public
export const ConnectionState: (props: ConnectionStatusProps & React_2.RefAttributes<HTMLDivElement>) => React_2.ReactNode;
// @public
export function ConnectionStateToast(props: ConnectionStateToastProps): React_2.JSX.Element;
// @public (undocumented)
export interface ConnectionStateToastProps extends React_2.HTMLAttributes<HTMLDivElement> {
// (undocumented)
room?: Room;
}
// @public (undocumented)
export interface ConnectionStatusProps extends React_2.HTMLAttributes<HTMLDivElement> {
room?: Room;
}
// @public
export function ControlBar({ variation, controls, saveUserChoices, onDeviceError, ...props }: ControlBarProps): React_2.JSX.Element;
// @public (undocumented)
export type ControlBarControls = {
microphone?: boolean;
camera?: boolean;
chat?: boolean;
screenShare?: boolean;
leave?: boolean;
settings?: boolean;
};
// @public (undocumented)
export interface ControlBarProps extends React_2.HTMLAttributes<HTMLDivElement> {
// (undocumented)
controls?: ControlBarControls;
// (undocumented)
onDeviceError?: (error: {
source: Track.Source;
error: Error;
}) => void;
// @alpha
saveUserChoices?: boolean;
// (undocumented)
variation?: 'minimal' | 'verbose' | 'textOnly';
}
// @public
export const DisconnectButton: (props: DisconnectButtonProps & React_2.RefAttributes<HTMLButtonElement>) => React_2.ReactNode;
// @public (undocumented)
export interface DisconnectButtonProps extends React_2.ButtonHTMLAttributes<HTMLButtonElement> {
// (undocumented)
stopTracks?: boolean;
}
// Warning: (ae-internal-missing-underscore) The name "FeatureFlags" should be prefixed with an underscore because the declaration is marked as @internal
//
// @internal (undocumented)
export interface FeatureFlags {
// (undocumented)
autoSubscription?: boolean;
}
// @public
export function FocusLayout({ trackRef, ...htmlProps }: FocusLayoutProps): React_2.JSX.Element;
// @public
export function FocusLayoutContainer(props: FocusLayoutContainerProps): React_2.JSX.Element;
// @public (undocumented)
export interface FocusLayoutContainerProps extends React_2.HTMLAttributes<HTMLDivElement> {
}
// @public (undocumented)
export interface FocusLayoutProps extends React_2.HTMLAttributes<HTMLElement> {
// Warning: (ae-incompatible-release-tags) The symbol "onParticipantClick" is marked as @public, but its signature references "ParticipantClickEvent" which is marked as @internal
//
// (undocumented)
onParticipantClick?: (evt: ParticipantClickEvent) => void;
trackRef?: TrackReferenceOrPlaceholder;
}
// @public
export const FocusToggle: (props: FocusToggleProps & React_2.RefAttributes<HTMLButtonElement>) => React_2.ReactNode;
// Warning: (ae-internal-missing-underscore) The name "FocusToggleIcon" should be prefixed with an underscore because the declaration is marked as @internal
//
// @internal (undocumented)
export const FocusToggleIcon: (props: SVGProps<SVGSVGElement>) => React_2.JSX.Element;
// @public (undocumented)
export interface FocusToggleProps extends React_2.ButtonHTMLAttributes<HTMLButtonElement> {
// (undocumented)
trackRef?: TrackReferenceOrPlaceholder;
}
// @public (undocumented)
export function formatChatMessageLinks(message: string): React_2.ReactNode;
// Warning: (ae-internal-missing-underscore) The name "GearIcon" should be prefixed with an underscore because the declaration is marked as @internal
//
// @internal (undocumented)
export const GearIcon: (props: SVGProps<SVGSVGElement>) => React_2.JSX.Element;
// @public
export function GridLayout({ tracks, ...props }: GridLayoutProps): React_2.JSX.Element;
// @public (undocumented)
export type GridLayoutDefinition = {
columns: number;
rows: number;
minWidth?: number;
minHeight?: number;
orientation?: 'landscape' | 'portrait';
};
// @public (undocumented)
export interface GridLayoutProps extends React_2.HTMLAttributes<HTMLDivElement>, Pick<UseParticipantsOptions, 'updateOnlyOn'> {
// (undocumented)
children: React_2.ReactNode;
// (undocumented)
tracks: TrackReferenceOrPlaceholder[];
}
// Warning: (ae-internal-missing-underscore) The name "isTrackReference" should be prefixed with an underscore because the declaration is marked as @internal
//
// @internal (undocumented)
export function isTrackReference(trackReference: unknown): trackReference is TrackReference;
// @public (undocumented)
export const LayoutContext: React_2.Context<LayoutContextType | undefined>;
// @alpha (undocumented)
export function LayoutContextProvider({ value, onPinChange, onWidgetChange, children, }: React_2.PropsWithChildren<LayoutContextProviderProps>): React_2.JSX.Element;
// @alpha (undocumented)
export interface LayoutContextProviderProps {
// (undocumented)
onPinChange?: (state: PinState) => void;
// (undocumented)
onWidgetChange?: (state: WidgetState) => void;
// (undocumented)
value?: LayoutContextType;
}
// @public (undocumented)
export type LayoutContextType = {
pin: PinContextType;
widget: WidgetContextType;
};
// Warning: (ae-internal-missing-underscore) The name "LeaveIcon" should be prefixed with an underscore because the declaration is marked as @internal
//
// @internal (undocumented)
export const LeaveIcon: (props: SVGProps<SVGSVGElement>) => React_2.JSX.Element;
// @public
export const LiveKitRoom: (props: React_2.PropsWithChildren<LiveKitRoomProps> & React_2.RefAttributes<HTMLDivElement>) => React_2.ReactNode;
// @public (undocumented)
export interface LiveKitRoomProps extends Omit<React_2.HTMLAttributes<HTMLDivElement>, 'onError'> {
audio?: AudioCaptureOptions | boolean;
connect?: boolean;
connectOptions?: RoomConnectOptions;
// @internal (undocumented)
featureFlags?: FeatureFlags;
// (undocumented)
onConnected?: () => void;
// (undocumented)
onDisconnected?: (reason?: DisconnectReason) => void;
// (undocumented)
onEncryptionError?: (error: Error) => void;
// (undocumented)
onError?: (error: Error) => void;
// (undocumented)
onMediaDeviceFailure?: (failure?: MediaDeviceFailure) => void;
options?: RoomOptions;
room?: Room;
screen?: ScreenShareCaptureOptions | boolean;
serverUrl: string | undefined;
// (undocumented)
simulateParticipants?: number | undefined;
token: string | undefined;
video?: VideoCaptureOptions | boolean;
}
// Warning: (ae-internal-missing-underscore) The name "LKFeatureContext" should be prefixed with an underscore because the declaration is marked as @internal
//
// @internal (undocumented)
export const LKFeatureContext: React_2.Context<FeatureFlags | undefined>;
// @public
export type LocalUserChoices = {
videoEnabled: boolean;
audioEnabled: boolean;
videoDeviceId: string;
audioDeviceId: string;
username: string;
};
// Warning: (ae-internal-missing-underscore) The name "LockLockedIcon" should be prefixed with an underscore because the declaration is marked as @internal
//
// @internal (undocumented)
export const LockLockedIcon: (props: SVGProps<SVGSVGElement>) => React_2.JSX.Element;
// @public
export function MediaDeviceMenu({ kind, initialSelection, onActiveDeviceChange, tracks, requestPermissions, ...props }: MediaDeviceMenuProps): React_2.JSX.Element;
// @public (undocumented)
export interface MediaDeviceMenuProps extends React_2.ButtonHTMLAttributes<HTMLButtonElement> {
// (undocumented)
initialSelection?: string;
// (undocumented)
kind?: MediaDeviceKind;
// (undocumented)
onActiveDeviceChange?: (kind: MediaDeviceKind, deviceId: string) => void;
requestPermissions?: boolean;
// (undocumented)
tracks?: Partial<Record<MediaDeviceKind, LocalAudioTrack | LocalVideoTrack | undefined>>;
}
// @public
export const MediaDeviceSelect: (props: MediaDeviceSelectProps & React_2.RefAttributes<HTMLUListElement>) => React_2.ReactNode;
// @public (undocumented)
export interface MediaDeviceSelectProps extends Omit<React_2.HTMLAttributes<HTMLUListElement>, 'onError'> {
exactMatch?: boolean;
// (undocumented)
initialSelection?: string;
// (undocumented)
kind: MediaDeviceKind;
// (undocumented)
onActiveDeviceChange?: (deviceId: string) => void;
// (undocumented)
onDeviceListChange?: (devices: MediaDeviceInfo[]) => void;
// (undocumented)
onDeviceSelectError?: (e: Error) => void;
// (undocumented)
onError?: (e: Error) => void;
requestPermissions?: boolean;
// (undocumented)
track?: LocalAudioTrack | LocalVideoTrack;
}
// Warning: (ae-forgotten-export) The symbol "LegacyReceivedChatMessage" needs to be exported by the entry point index.d.ts
//
// @public @deprecated (undocumented)
export type MessageDecoder = (message: Uint8Array) => LegacyReceivedChatMessage;
// Warning: (ae-forgotten-export) The symbol "LegacyChatMessage" needs to be exported by the entry point index.d.ts
//
// @public @deprecated (undocumented)
export type MessageEncoder = (message: LegacyChatMessage) => Uint8Array;
// @public (undocumented)
export type MessageFormatter = (message: string) => React_2.ReactNode;
// Warning: (ae-internal-missing-underscore) The name "MicDisabledIcon" should be prefixed with an underscore because the declaration is marked as @internal
//
// @internal (undocumented)
export const MicDisabledIcon: (props: SVGProps<SVGSVGElement>) => React_2.JSX.Element;
// Warning: (ae-internal-missing-underscore) The name "MicIcon" should be prefixed with an underscore because the declaration is marked as @internal
//
// @internal (undocumented)
export const MicIcon: (props: SVGProps<SVGSVGElement>) => React_2.JSX.Element;
// @alpha
export interface MultiBandTrackVolumeOptions {
// (undocumented)
analyserOptions?: AnalyserOptions;
// (undocumented)
bands?: number;
hiPass?: number;
loPass?: number;
updateInterval?: number;
}
// @public
export const ParticipantAudioTile: (props: ParticipantTileProps & React_2.RefAttributes<HTMLDivElement>) => React_2.ReactNode;
// Warning: (ae-internal-missing-underscore) The name "ParticipantClickEvent" should be prefixed with an underscore because the declaration is marked as @internal
//
// @internal (undocumented)
export interface ParticipantClickEvent {
// (undocumented)
participant: Participant;
// (undocumented)
track?: TrackPublication;
}
// @public (undocumented)
export const ParticipantContext: React_2.Context<Participant | undefined>;
// @public
export function ParticipantContextIfNeeded(props: React_2.PropsWithChildren<{
participant?: Participant;
}>): React_2.JSX.Element;
// Warning: (ae-forgotten-export) The symbol "RequireAtLeastOne" needs to be exported by the entry point index.d.ts
//
// @beta (undocumented)
export type ParticipantIdentifier = RequireAtLeastOne<{
kind: ParticipantKind;
identity: string;
}, 'identity' | 'kind'>;
// @public
export function ParticipantLoop({ participants, ...props }: ParticipantLoopProps): React_2.JSX.Element;
// @public (undocumented)
export interface ParticipantLoopProps {
children: React_2.ReactNode;
participants: Participant[];
}
// @public
export const ParticipantName: (props: ParticipantNameProps & React_2.RefAttributes<HTMLSpanElement>) => React_2.ReactNode;
// @public (undocumented)
export interface ParticipantNameProps extends React_2.HTMLAttributes<HTMLSpanElement>, UseParticipantInfoOptions {
}
// Warning: (ae-internal-missing-underscore) The name "ParticipantPlaceholder" should be prefixed with an underscore because the declaration is marked as @internal
//
// @internal (undocumented)
export const ParticipantPlaceholder: (props: SVGProps<SVGSVGElement>) => React_2.JSX.Element;
// @public
export const ParticipantTile: (props: ParticipantTileProps & React_2.RefAttributes<HTMLDivElement>) => React_2.ReactNode;
// @public (undocumented)
export interface ParticipantTileProps extends React_2.HTMLAttributes<HTMLDivElement> {
// (undocumented)
disableSpeakingIndicator?: boolean;
// Warning: (ae-incompatible-release-tags) The symbol "onParticipantClick" is marked as @public, but its signature references "ParticipantClickEvent" which is marked as @internal
//
// (undocumented)
onParticipantClick?: (event: ParticipantClickEvent) => void;
trackRef?: TrackReferenceOrPlaceholder;
}
// @public (undocumented)
export type PinState = TrackReferenceOrPlaceholder[];
// @public
export function PreJoin({ defaults, onValidate, onSubmit, onError, debug, joinLabel, micLabel, camLabel, userLabel, persistUserChoices, videoProcessor, ...htmlProps }: PreJoinProps): React_2.JSX.Element;
// @public
export interface PreJoinProps extends Omit<React_2.HTMLAttributes<HTMLDivElement>, 'onSubmit' | 'onError'> {
// (undocumented)
camLabel?: string;
debug?: boolean;
defaults?: Partial<LocalUserChoices>;
// (undocumented)
joinLabel?: string;
// (undocumented)
micLabel?: string;
// (undocumented)
onError?: (error: Error) => void;
onSubmit?: (values: LocalUserChoices) => void;
onValidate?: (values: LocalUserChoices) => boolean;
// @alpha
persistUserChoices?: boolean;
// (undocumented)
userLabel?: string;
// (undocumented)
videoProcessor?: TrackProcessor<Track.Kind.Video>;
}
// Warning: (ae-internal-missing-underscore) The name "QualityExcellentIcon" should be prefixed with an underscore because the declaration is marked as @internal
//
// @internal (undocumented)
export const QualityExcellentIcon: (props: SVGProps<SVGSVGElement>) => React_2.JSX.Element;
// Warning: (ae-internal-missing-underscore) The name "QualityGoodIcon" should be prefixed with an underscore because the declaration is marked as @internal
//
// @internal (undocumented)
export const QualityGoodIcon: (props: SVGProps<SVGSVGElement>) => React_2.JSX.Element;
// Warning: (ae-internal-missing-underscore) The name "QualityPoorIcon" should be prefixed with an underscore because the declaration is marked as @internal
//
// @internal (undocumented)
export const QualityPoorIcon: (props: SVGProps<SVGSVGElement>) => React_2.JSX.Element;
// Warning: (ae-internal-missing-underscore) The name "QualityUnknownIcon" should be prefixed with an underscore because the declaration is marked as @internal
//
// @internal (undocumented)
export const QualityUnknownIcon: (props: SVGProps<SVGSVGElement>) => React_2.JSX.Element;
// @public (undocumented)
export interface ReceivedChatMessage extends ChatMessage {
// (undocumented)
from?: Participant;
}
// @public
export function RoomAudioRenderer({ volume, muted }: RoomAudioRendererProps): React_2.JSX.Element;
// @public (undocumented)
export interface RoomAudioRendererProps {
// @alpha
muted?: boolean;
volume?: number;
}
// @public (undocumented)
export const RoomContext: React_2.Context<Room | undefined>;
// @public
export const RoomName: React_2.FC<RoomNameProps & React_2.RefAttributes<HTMLSpanElement>>;
// @public (undocumented)
export interface RoomNameProps extends React_2.HTMLAttributes<HTMLSpanElement> {
// (undocumented)
childrenPosition?: 'before' | 'after';
}
// Warning: (ae-internal-missing-underscore) The name "ScreenShareIcon" should be prefixed with an underscore because the declaration is marked as @internal
//
// @internal (undocumented)
export const ScreenShareIcon: (props: SVGProps<SVGSVGElement>) => React_2.JSX.Element;
// Warning: (ae-internal-missing-underscore) The name "ScreenShareStopIcon" should be prefixed with an underscore because the declaration is marked as @internal
//
// @internal (undocumented)
export const ScreenShareStopIcon: (props: SVGProps<SVGSVGElement>) => React_2.JSX.Element;
// Warning: (ae-forgotten-export) The symbol "LogExtension" needs to be exported by the entry point index.d.ts
// Warning: (ae-forgotten-export) The symbol "SetLogExtensionOptions" needs to be exported by the entry point index.d.ts
//
// @public
export function setLogExtension(extension: LogExtension, options?: SetLogExtensionOptions): void;
// Warning: (ae-forgotten-export) The symbol "LogLevel" needs to be exported by the entry point index.d.ts
// Warning: (ae-forgotten-export) The symbol "SetLogLevelOptions" needs to be exported by the entry point index.d.ts
//
// @public
export function setLogLevel(level: LogLevel, options?: SetLogLevelOptions): void;
// Warning: (ae-internal-missing-underscore) The name "SpinnerIcon" should be prefixed with an underscore because the declaration is marked as @internal
//
// @internal (undocumented)
export const SpinnerIcon: (props: SVGProps<SVGSVGElement>) => React_2.JSX.Element;
// @public
export const StartAudio: (props: AllowAudioPlaybackProps & React_2.RefAttributes<HTMLButtonElement>) => React_2.ReactNode;
// @public
export const StartMediaButton: (props: AllowMediaPlaybackProps & React_2.RefAttributes<HTMLButtonElement>) => React_2.ReactNode;
// @public
export function Toast(props: React_2.HTMLAttributes<HTMLDivElement>): React_2.JSX.Element;
// @public
export function TrackLoop({ tracks, ...props }: TrackLoopProps): React_2.JSX.Element;
// @public (undocumented)
export interface TrackLoopProps {
children: React_2.ReactNode;
tracks: TrackReference[] | TrackReferenceOrPlaceholder[];
}
// @public
export const TrackMutedIndicator: (props: TrackMutedIndicatorProps & React_2.RefAttributes<HTMLDivElement>) => React_2.ReactNode;
// @public (undocumented)
export interface TrackMutedIndicatorProps extends React_2.HTMLAttributes<HTMLDivElement> {
// (undocumented)
show?: 'always' | 'muted' | 'unmuted';
// (undocumented)
trackRef: TrackReferenceOrPlaceholder;
}
// @public
export const TrackRefContext: React_2.Context<TrackReferenceOrPlaceholder | undefined>;
// Warning: (ae-internal-missing-underscore) The name "TrackRefContextIfNeeded" should be prefixed with an underscore because the declaration is marked as @internal
//
// @internal
export function TrackRefContextIfNeeded(props: React_2.PropsWithChildren<{
trackRef?: TrackReferenceOrPlaceholder;
}>): React_2.JSX.Element;
// @public (undocumented)
export type TrackReference = {
participant: Participant;
publication: TrackPublication;
source: Track.Source;
};
// Warning: (ae-forgotten-export) The symbol "TrackReferencePlaceholder" needs to be exported by the entry point index.d.ts
//
// @public (undocumented)
export type TrackReferenceOrPlaceholder = TrackReference | TrackReferencePlaceholder;
// Warning: (ae-forgotten-export) The symbol "ToggleSource" needs to be exported by the entry point index.d.ts
//
// @public
export const TrackToggle: <T extends ToggleSource>(props: TrackToggleProps<T> & React_2.RefAttributes<HTMLButtonElement>) => React_2.ReactNode;
// @public (undocumented)
export interface TrackToggleProps<T extends ToggleSource> extends Omit<React_2.ButtonHTMLAttributes<HTMLButtonElement>, 'onChange'> {
// Warning: (ae-forgotten-export) The symbol "CaptureOptionsBySource" needs to be exported by the entry point index.d.ts
//
// (undocumented)
captureOptions?: CaptureOptionsBySource<T>;
// (undocumented)
initialState?: boolean;
onChange?: (enabled: boolean, isUserInitiated: boolean) => void;
// (undocumented)
onDeviceError?: (error: Error) => void;
// (undocumented)
publishOptions?: TrackPublishOptions;
// (undocumented)
showIcon?: boolean;
// (undocumented)
source: T;
}
// @alpha (undocumented)
export interface TrackTranscriptionOptions {
bufferSize?: number;
onTranscription?: (newSegments: TranscriptionSegment[]) => void;
}
// Warning: (ae-internal-missing-underscore) The name "UnfocusToggleIcon" should be prefixed with an underscore because the declaration is marked as @internal
//
// @internal (undocumented)
export const UnfocusToggleIcon: (props: SVGProps<SVGSVGElement>) => React_2.JSX.Element;
// @alpha
export function useAudioPlayback(room?: Room): {
canPlayAudio: boolean;
startAudio: () => Promise<void>;
};
// @alpha (undocumented)
export function useAudioWaveform(trackOrTrackReference?: LocalAudioTrack | RemoteAudioTrack | TrackReferenceOrPlaceholder, options?: AudioWaveformOptions): {
bars: number[];
};
// @public
export function useChat(options?: ChatOptions): {
send: (message: string) => Promise<ChatMessage>;
update: (message: string, originalMessageOrId: string | ChatMessage) => Promise<{
readonly message: string;
readonly editTimestamp: number;
readonly id: string;
readonly timestamp: number;
}>;
chatMessages: ReceivedChatMessage[];
isSending: boolean;
};
// @public
export function useChatToggle({ props }: UseChatToggleProps): {
mergedProps: React_2.ButtonHTMLAttributes<HTMLButtonElement> & {
className: string;
onClick: () => void;
'aria-pressed': string;
'data-lk-unread-msgs': string;
};
};
// @public (undocumented)
export interface UseChatToggleProps {
// (undocumented)
props: React_2.ButtonHTMLAttributes<HTMLButtonElement>;
}
// @public
export function useClearPinButton(props: ClearPinButtonProps): {
buttonProps: ClearPinButtonProps & {
className: string;
disabled: boolean;
onClick: () => void;
};
};
// @public
export function useConnectionQualityIndicator(options?: ConnectionQualityIndicatorOptions): {
className: "lk-connection-quality";
quality: ConnectionQuality;
};
// @public
export function useConnectionState(room?: Room): ConnectionState_2;
// @public (undocumented)
export function useCreateLayoutContext(): LayoutContextType;
// Warning: (ae-forgotten-export) The symbol "ReceivedDataMessage" needs to be exported by the entry point index.d.ts
// Warning: (ae-forgotten-export) The symbol "UseDataChannelReturnType" needs to be exported by the entry point index.d.ts
//
// @public
export function useDataChannel<T extends string>(topic: T, onMessage?: (msg: ReceivedDataMessage<T>) => void): UseDataChannelReturnType<T>;
// @public
export function useDataChannel(onMessage?: (msg: ReceivedDataMessage) => void): UseDataChannelReturnType;
// @public
export function useDisconnectButton(props: DisconnectButtonProps): {
buttonProps: DisconnectButtonProps & {
className: string;
onClick: () => void;
disabled: boolean;
};
};
// @public (undocumented)
export function useEnsureCreateLayoutContext(layoutContext?: LayoutContextType): LayoutContextType;
// @public
export function useEnsureLayoutContext(layoutContext?: LayoutContextType): LayoutContextType;
// @public
export function useEnsureParticipant(participant?: Participant): Participant;
// @public
export function useEnsureRoom(room?: Room): Room;
// @public
export function useEnsureTrackRef(trackRef?: TrackReferenceOrPlaceholder): TrackReferenceOrPlaceholder;
// @alpha
export function useFacingMode(trackReference: TrackReferenceOrPlaceholder): 'user' | 'environment' | 'left' | 'right' | 'undefined';
// Warning: (ae-forgotten-export) The symbol "FeatureContext" needs to be exported by the entry point index.d.ts
// Warning: (ae-internal-missing-underscore) The name "useFeatureContext" should be prefixed with an underscore because the declaration is marked as @internal
//
// @internal (undocumented)
export function useFeatureContext<T extends boolean>(require?: T): FeatureContext<T>;
// @public
export function useFocusToggle({ trackRef, props }: UseFocusToggleProps): {
mergedProps: React_2.ButtonHTMLAttributes<HTMLButtonElement> & {
className: string;
onClick: (event: React_2.MouseEvent<HTMLButtonElement, MouseEvent>) => void;
};
inFocus: boolean;
};
// @public (undocumented)
export interface UseFocusToggleProps {
// (undocumented)
props: React_2.ButtonHTMLAttributes<HTMLButtonElement>;
// (undocumented)
trackRef?: TrackReferenceOrPlaceholder;
}
// @public
export function useGridLayout(
gridElement: React_2.RefObject<HTMLDivElement>,
trackCount: number, options?: {
gridLayouts?: GridLayoutDefinition[];
}): {
layout: GridLayoutInfo;
containerWidth: number;
containerHeight: number;
};
// @alpha (undocumented)
export function useIsEncrypted(participant?: Participant, options?: UseIsEncryptedOptions): boolean;
// @alpha (undocumented)
export interface UseIsEncryptedOptions {
// (undocumented)
room?: Room;
}
// @public
export function useIsMuted(trackRef: TrackReferenceOrPlaceholder): boolean;
// @public (undocumented)
export interface UseIsMutedOptions {
// (undocumented)
participant?: Participant;
}
// @public
export function useIsRecording(room?: Room): boolean;
// @public
export function useIsSpeaking(participant?: Participant): boolean;
// @public
export function useLayoutContext(): LayoutContextType;
// @public
export function useLiveKitRoom<T extends HTMLElement>(props: LiveKitRoomProps): {
room: Room | undefined;
htmlProps: HTMLAttributes<T>;
};
// @public
export function useLocalParticipant(options?: UseLocalParticipantOptions): {
isMicrophoneEnabled: boolean;
isScreenShareEnabled: boolean;
isCameraEnabled: boolean;
microphoneTrack: TrackPublication | undefined;
cameraTrack: TrackPublication | undefined;
lastMicrophoneError: Error | undefined;
lastCameraError: Error | undefined;
localParticipant: LocalParticipant;
};
// @public (undocumented)
export interface UseLocalParticipantOptions {
room?: Room;
}
// @public
export function useLocalParticipantPermissions(): ParticipantPermission | undefined;
// @public
export function useMaybeLayoutContext(): LayoutContextType | undefined;
// @public
export function useMaybeParticipantContext(): Participant | undefined;
// @public
export function useMaybeRoomContext(): Room | undefined;
// @public
export function useMaybeTrackRefContext(): TrackReferenceOrPlaceholder | undefined;
// @public
export function useMediaDevices({ kind, onError, }: {
kind: MediaDeviceKind;
onError?: (e: Error) => void;
}): MediaDeviceInfo[];
// @public
export function useMediaDeviceSelect({ kind, room, track, requestPermissions, onError, }: UseMediaDeviceSelectProps): {
devices: MediaDeviceInfo[];
className: string;
activeDeviceId: string;
setActiveMediaDevice: (id: string, options?: SetMediaDeviceOptions) => Promise<void>;
};
// @public (undocumented)
export interface UseMediaDeviceSelectProps {
// (undocumented)
kind: MediaDeviceKind;
onError?: (e: Error) => void;
requestPermissions?: boolean;
// (undocumented)
room?: Room;
// (undocumented)
track?: LocalAudioTrack | LocalVideoTrack;
}
// @alpha
export function useMultibandTrackVolume(trackOrTrackReference?: LocalAudioTrack | RemoteAudioTrack | TrackReferenceOrPlaceholder, options?: MultiBandTrackVolumeOptions): number[];
// @alpha
export function usePagination(itemPerPage: number, trackReferences: TrackReferenceOrPlaceholder[]): {
totalPageCount: number;
nextPage: () => void;
prevPage: () => void;
setPage: (num: number) => void;
firstItemIndex: number;
lastItemIndex: number;
tracks: TrackReferenceOrPlaceholder[];
currentPage: number;
};
// @public
export function useParticipantAttribute(attributeKey: string, options?: UseParticipantAttributesOptions): string;
// @public (undocumented)
export function useParticipantAttributes(props?: UseParticipantAttributesOptions): {
attributes: Readonly<Record<string, string>> | undefined;
};
// @public
export interface UseParticipantAttributesOptions {
// (undocumented)
participant?: Participant;
}
// @public
export function useParticipantContext(): Participant;
// @public (undocumented)
export function useParticipantInfo(props?: UseParticipantInfoOptions): {
identity: string | undefined;
name: string | undefined;
metadata: string | undefined;
};
// @public
export interface UseParticipantInfoOptions {
// (undocumented)
participant?: Participant;
}
// @public (undocumented)
export function useParticipantPermissions(options?: UseParticipantPermissionsOptions): ParticipantPermission | undefined;
// @public
export interface UseParticipantPermissionsOptions {
// (undocumented)
participant?: Participant;
}
// @public
export function useParticipants(options?: UseParticipantsOptions): (RemoteParticipant | LocalParticipant)[];
// @public (undocumented)
export interface UseParticipantsOptions {
room?: Room;
updateOnlyOn?: RoomEvent[];
}
// @public
export function useParticipantTile<T extends HTMLElement>({ trackRef, onParticipantClick, disableSpeakingIndicator, htmlProps, }: UseParticipantTileProps<T>): {
elementProps: React_2.HTMLAttributes<T>;
};
// @public (undocumented)
export interface UseParticipantTileProps<T extends HTMLElement> extends React_2.HTMLAttributes<T> {
// (undocumented)
disableSpeakingIndicator?: boolean;
// (undocumented)
htmlProps: React_2.HTMLAttributes<T>;
// Warning: (ae-incompatible-release-tags) The symbol "onParticipantClick" is marked as @public, but its signature references "ParticipantClickEvent" which is marked as @internal
//
// (undocumented)
onParticipantClick?: (event: ParticipantClickEvent) => void;
trackRef?: TrackReferenceOrPlaceholder;
}
// @public
export function useParticipantTracks(sources: Track.Source[], participantIdentity?: string): TrackReference[];
// @alpha
export function usePersistentUserChoices(options?: UsePersistentUserChoicesOptions): {
userChoices: LocalUserChoices;
saveAudioInputEnabled: (isEnabled: boolean) => void;
saveVideoInputEnabled: (isEnabled: boolean) => void;
saveAudioInputDeviceId: (deviceId: string) => void;
saveVideoInputDeviceId: (deviceId: string) => void;
saveUsername: (username: string) => void;
};
// @alpha
export interface UsePersistentUserChoicesOptions {
defaults?: Partial<LocalUserChoices>;
preventLoad?: boolean;
preventSave?: boolean;
}
// @public
export function usePinnedTracks(layoutContext?: LayoutContextType): TrackReferenceOrPlaceholder[];
// @public (undocumented)
export function usePreviewDevice<T extends LocalVideoTrack | LocalAudioTrack>(enabled: boolean, deviceId: string, kind: 'videoinput' | 'audioinput'): {
selectedDevice: MediaDeviceInfo | undefined;
localTrack: T | undefined;
deviceError: Error | null;
};
// @alpha (undocumented)
export function usePreviewTracks(options: CreateLocalTracksOptions, onError?: (err: Error) => void): LocalTrack<Track.Kind>[] | undefined;
// Warning: (ae-incompatible-release-tags) The symbol "useRemoteParticipant" is marked as @public, but its signature references "ParticipantIdentifier" which is marked as @beta
//
// @public
export function useRemoteParticipant(identifier: ParticipantIdentifier, options?: UseRemoteParticipantOptions): RemoteParticipant | undefined;
// @public
export function useRemoteParticipant(identity: string, options?: UseRemoteParticipantOptions): RemoteParticipant | undefined;
// @public (undocumented)
export interface UseRemoteParticipantOptions {
updateOnlyOn?: ParticipantEvent[];
}
// @public
export function useRemoteParticipants(options?: UseRemoteParticipantsOptions): RemoteParticipant[];
// @public (undocumented)
export interface UseRemoteParticipantsOptions {
room?: Room;
updateOnlyOn?: RoomEvent[];
}
// @public (undocumented)
export interface UserInfo {
// (undocumented)
identity?: string;
// (undocumented)
metadata?: string;
// (undocumented)
name?: string;
}
// @public
export function useRoomContext(): Room;
// @public (undocumented)
export function useRoomInfo(options?: UseRoomInfoOptions): {
name: string;
metadata: string | undefined;
};
// @public
export interface UseRoomInfoOptions {
// (undocumented)
room?: Room;
}
// @public
export function useSortedParticipants(participants: Array<Participant>): Participant[];
// @public
export function useSpeakingParticipants(): Participant[];
// @alpha
export function useStartAudio({ room, props }: UseStartAudioProps): {
mergedProps: React_2.ButtonHTMLAttributes<HTMLButtonElement> & {
className: string;
onClick: () => void;
style: {
display: string;
};
};
canPlayAudio: boolean;
};
// @alpha (undocumented)
export interface UseStartAudioProps {
// (undocumented)
props: React_2.ButtonHTMLAttributes<HTMLButtonElement>;
// (undocumented)
room?: Room;
}
// @alpha
export function useStartVideo({ room, props }: UseStartVideoProps): {
mergedProps: React_2.ButtonHTMLAttributes<HTMLButtonElement> & {
className: string;
onClick: () => void;
style: {
display: string;
};
};
canPlayVideo: boolean;
};
// @alpha (undocumented)
export interface UseStartVideoProps {
// (undocumented)
props: React_2.ButtonHTMLAttributes<HTMLButtonElement>;
// (undocumented)
room?: Room;
}
// @alpha
export function useSwipe(element: React_2.RefObject<HTMLElement>, options?: UseSwipeOptions): void;
// @alpha (undocumented)
export type UseSwipeOptions = {
minSwipeDistance?: number;
onLeftSwipe?: () => void;
onRightSwipe?: () => void;
};
// @public
export function useToken(tokenEndpoint: string | undefined, roomName: string, options?: UseTokenOptions): string | undefined;
// @public (undocumented)
export interface UseTokenOptions {
// (undocumented)
userInfo?: UserInfo;
}
// @public
export function useTrackByName(name: string, participant?: Participant): TrackReferenceOrPlaceholder;
// Warning: (ae-forgotten-export) The symbol "TrackMutedIndicatorReturnType" needs to be exported by the entry point index.d.ts
//
// @public
export function useTrackMutedIndicator(trackRef?: TrackReferenceOrPlaceholder): TrackMutedIndicatorReturnType;
// @public
export function useTrackRefContext(): TrackReferenceOrPlaceholder;
// Warning: (ae-forgotten-export) The symbol "SourcesArray" needs to be exported by the entry point index.d.ts
//
// @public
export function useTracks<T extends SourcesArray = Track.Source[]>(sources?: T, options?: UseTracksOptions): UseTracksHookReturnType<T>;
// Warning: (ae-forgotten-export) The symbol "TrackSourceWithOptions" needs to be exported by the entry point index.d.ts
//
// @public (undocumented)
export type UseTracksHookReturnType<T> = T extends Track.Source[] ? TrackReference[] : T extends TrackSourceWithOptions[] ? TrackReferenceOrPlaceholder[] : never;
// @public (undocumented)
export type UseTracksOptions = {
updateOnlyOn?: RoomEvent[];
onlySubscribed?: boolean;
room?: Room;
};
// @public
export function useTrackToggle<T extends ToggleSource>({ source, onChange, initialState, captureOptions, publishOptions, onDeviceError, ...rest }: UseTrackToggleProps<T>): {
toggle: ((forceState?: boolean) => Promise<void>) | ((forceState?: boolean, captureOptions?: CaptureOptionsBySource<T> | undefined) => Promise<boolean | undefined>);
enabled: boolean;
pending: boolean;
track: LocalTrackPublication | undefined;
buttonProps: React_2.ButtonHTMLAttributes<HTMLButtonElement>;
};
// @public (undocumented)
export interface UseTrackToggleProps<T extends ToggleSource> extends Omit<TrackToggleProps<T>, 'showIcon'> {
}
// @alpha (undocumented)
export function useTrackTranscription(trackRef: TrackReferenceOrPlaceholder | undefined, options?: TrackTranscriptionOptions): {
segments: ReceivedTranscriptionSegment[];
};
// @alpha
export function useTrackVolume(trackOrTrackReference?: LocalAudioTrack | RemoteAudioTrack | TrackReference, options?: AudioAnalyserOptions): number;
// @public
export function useVisualStableUpdate(
trackReferences: TrackReferenceOrPlaceholder[], maxItemsOnPage: number, options?: UseVisualStableUpdateOptions): TrackReferenceOrPlaceholder[];
// @public (undocumented)
export interface UseVisualStableUpdateOptions {
customSortFunction?: (trackReferences: TrackReferenceOrPlaceholder[]) => TrackReferenceOrPlaceholder[];
}
// @beta
export function useVoiceAssistant(): VoiceAssistant;
// @public
export function VideoConference({ chatMessageFormatter, chatMessageDecoder, chatMessageEncoder, SettingsComponent, ...props }: VideoConferenceProps): React_2.JSX.Element;
// @public (undocumented)
export interface VideoConferenceProps extends React_2.HTMLAttributes<HTMLDivElement> {
// (undocumented)
chatMessageDecoder?: MessageDecoder;
// (undocumented)
chatMessageEncoder?: MessageEncoder;
// (undocumented)
chatMessageFormatter?: MessageFormatter;
// @alpha (undocumented)
SettingsComponent?: React_2.ComponentType;
}
// @public
export const VideoTrack: (props: VideoTrackProps & React_2.RefAttributes<HTMLVideoElement>) => React_2.ReactNode;
// @public (undocumented)
export interface VideoTrackProps extends React_2.VideoHTMLAttributes<HTMLVideoElement> {
// (undocumented)
manageSubscription?: boolean;
// (undocumented)
onSubscriptionStatusChanged?: (subscribed: boolean) => void;
// Warning: (ae-incompatible-release-tags) The symbol "onTrackClick" is marked as @public, but its signature references "ParticipantClickEvent" which is marked as @internal
//
// (undocumented)
onTrackClick?: (evt: ParticipantClickEvent) => void;
trackRef?: TrackReference;
}
// @beta (undocumented)
export interface VoiceAssistant {
// (undocumented)
agent: RemoteParticipant | undefined;
// (undocumented)
agentAttributes: RemoteParticipant['attributes'] | undefined;
// (undocumented)
agentTranscriptions: ReceivedTranscriptionSegment[];
// (undocumented)
audioTrack: TrackReference | undefined;
// (undocumented)
state: AgentState;
}
// @beta (undocumented)
export function VoiceAssistantControlBar({ controls, saveUserChoices, onDeviceError, ...props }: VoiceAssistantControlBarProps): React_2.JSX.Element;
// @beta (undocumented)
export type VoiceAssistantControlBarControls = {
microphone?: boolean;
leave?: boolean;
};
// @beta (undocumented)
export interface VoiceAssistantControlBarProps extends React_2.HTMLAttributes<HTMLDivElement> {
// (undocumented)
controls?: VoiceAssistantControlBarControls;
// (undocumented)
onDeviceError?: (error: {
source: Track.Source;
error: Error;
}) => void;
saveUserChoices?: boolean;
}
// @public (undocumented)
export type WidgetState = {
showChat: boolean;
unreadMessages: number;
showSettings?: boolean;
};
// Warnings were encountered during analysis:
//
// src/context/layout-context.ts:10:3 - (ae-forgotten-export) The symbol "PinContextType" needs to be exported by the entry point index.d.ts
// src/context/layout-context.ts:11:3 - (ae-forgotten-export) The symbol "WidgetContextType" needs to be exported by the entry point index.d.ts
// src/hooks/useGridLayout.ts:27:6 - (ae-forgotten-export) The symbol "GridLayoutInfo" needs to be exported by the entry point index.d.ts
// src/hooks/useMediaDeviceSelect.ts:47:29 - (ae-forgotten-export) The symbol "SetMediaDeviceOptions" needs to be exported by the entry point index.d.ts
// src/hooks/useTrackTranscription.ts:43:38 - (ae-forgotten-export) The symbol "ReceivedTranscriptionSegment" needs to be exported by the entry point index.d.ts
// (No @packageDocumentation comment for this package)