Do not edit this file. It is a report generated by API Extractor.
/// <reference types="react" />
import { AddPhoneNumberOptions } from '@azure/communication-calling';
import { AudioDeviceInfo } from '@azure/communication-calling';
import { AudioEffectsStartConfig } from '@azure/communication-calling';
import { BackgroundBlurConfig } from '@azure/communication-calling';
import { BackgroundBlurEffect } from '@azure/communication-calling';
import { BackgroundReplacementConfig } from '@azure/communication-calling';
import { BackgroundReplacementEffect } from '@azure/communication-calling';
import { BreakoutRoom } from '@azure/communication-calling';
import { BreakoutRoomsSettings } from '@azure/communication-calling';
import { BreakoutRoomsUpdatedListener } from '@azure/communication-calling';
import { Call } from '@azure/communication-calling';
import { CallAgent } from '@azure/communication-calling';
import { CallClient } from '@azure/communication-calling';
import { CallClientOptions } from '@azure/communication-calling';
import { CallDirection } from '@azure/communication-calling';
import { CallEndReason } from '@azure/communication-calling';
import { CallerInfo } from '@azure/communication-calling';
import { CallKind } from '@azure/communication-calling';
import { CallState as CallState_2 } from '@azure/communication-calling';
import { CallSurvey } from '@azure/communication-calling';
import { CallSurveyResponse } from '@azure/communication-calling';
import { CapabilitiesChangeInfo } from '@azure/communication-calling';
import { CaptionsKind } from '@azure/communication-calling';
import { CaptionsResultType } from '@azure/communication-calling';
import { ChatClient } from '@azure/communication-chat';
import { ChatClientOptions } from '@azure/communication-chat';
import { ChatMessage as ChatMessage_2 } from '@azure/communication-chat';
import { ChatMessageReadReceipt } from '@azure/communication-chat';
import { ChatParticipant } from '@azure/communication-chat';
import { ChatThreadClient } from '@azure/communication-chat';
import { CommunicationIdentifier } from '@azure/communication-common';
import { CommunicationIdentifierKind } from '@azure/communication-common';
import { CommunicationTokenCredential } from '@azure/communication-common';
import { CommunicationUserIdentifier } from '@azure/communication-common';
import type { CommunicationUserKind } from '@azure/communication-common';
import { CreateViewOptions } from '@azure/communication-calling';
import { DeviceAccess } from '@azure/communication-calling';
import { DeviceManager } from '@azure/communication-calling';
import { DominantSpeakersInfo } from '@azure/communication-calling';
import { DtmfTone as DtmfTone_2 } from '@azure/communication-calling';
import { EnvironmentInfo } from '@azure/communication-calling';
import { GroupCallLocator } from '@azure/communication-calling';
import { IButtonProps } from '@fluentui/react';
import { IButtonStyles } from '@fluentui/react';
import { IContextualMenuItem } from '@fluentui/react';
import { IContextualMenuItemStyles } from '@fluentui/react';
import { IContextualMenuProps } from '@fluentui/react';
import { IContextualMenuStyles } from '@fluentui/react';
import { IIconProps } from '@fluentui/react';
import { IIconStyles } from '@fluentui/react';
import { IMessageBarProps } from '@fluentui/react';
import { IncomingCall } from '@azure/communication-calling';
import { IncomingCallKind } from '@azure/communication-calling';
import { IPersonaStyleProps } from '@fluentui/react';
import { IPersonaStyles } from '@fluentui/react';
import { IRawStyle } from '@fluentui/react';
import { IRenderFunction } from '@fluentui/react';
import { IStackStyles } from '@fluentui/react';
import { IStyle } from '@fluentui/react';
import { IStyleFunctionOrObject } from '@fluentui/react';
import { ITextFieldStyles } from '@fluentui/react';
import { LatestMediaDiagnostics } from '@azure/communication-calling';
import { LatestNetworkDiagnostics } from '@azure/communication-calling';
import { LocalVideoStream } from '@azure/communication-calling';
import type { MediaDiagnosticChangedEventArgs } from '@azure/communication-calling';
import { MediaStreamType } from '@azure/communication-calling';
import { MicrosoftTeamsAppIdentifier } from '@azure/communication-common';
import { MicrosoftTeamsUserIdentifier } from '@azure/communication-common';
import type { NetworkDiagnosticChangedEventArgs } from '@azure/communication-calling';
import { PartialTheme } from '@fluentui/react';
import { ParticipantCapabilities } from '@azure/communication-calling';
import { ParticipantRole } from '@azure/communication-calling';
import { PermissionConstraints } from '@azure/communication-calling';
import { PersonaInitialsColor } from '@fluentui/react';
import { PersonaPresence } from '@fluentui/react';
import { PersonaSize } from '@fluentui/react';
import { PhoneNumberIdentifier } from '@azure/communication-common';
import { PropertyChangedEvent } from '@azure/communication-calling';
import { default as React_2 } from 'react';
import { Reaction as Reaction_2 } from '@azure/communication-calling';
import { ReactionMessage } from '@azure/communication-calling';
import type { RemoteParticipant } from '@azure/communication-calling';
import { RemoteParticipantState as RemoteParticipantState_2 } from '@azure/communication-calling';
import { RoomCallLocator } from '@azure/communication-calling';
import { ScalingMode } from '@azure/communication-calling';
import { SendMessageOptions } from '@azure/communication-chat';
import { SpotlightedParticipant } from '@azure/communication-calling';
import { StartCallOptions } from '@azure/communication-calling';
import { StartCaptionsOptions } from '@azure/communication-calling';
import { TeamsCall } from '@azure/communication-calling';
import { TeamsCallAgent } from '@azure/communication-calling';
import { TeamsCallInfo } from '@azure/communication-calling';
import { TeamsIncomingCall } from '@azure/communication-calling';
import { TeamsMeetingIdLocator } from '@azure/communication-calling';
import { TeamsMeetingLinkLocator } from '@azure/communication-calling';
import { Theme } from '@fluentui/react';
import { TransferEventArgs } from '@azure/communication-calling';
import { TypingIndicatorReceivedEvent } from '@azure/communication-chat';
import { UnknownIdentifier } from '@azure/communication-common';
import { VideoDeviceInfo } from '@azure/communication-calling';
import { VideoEffectName } from '@azure/communication-calling';
import { VideoStreamRenderer } from '@azure/communication-calling';
import { VideoStreamRendererView } from '@azure/communication-calling';
// @public
export interface AcceptedTransfer {
callId: string;
timestamp: Date;
}
// @public
export interface ActiveErrorMessage {
timestamp?: Date;
type: ErrorType;
}
// @public
export interface ActiveNotification {
ariaLive?: 'assertive' | 'off' | 'polite';
autoDismiss?: boolean;
onClickPrimaryButton?: () => void;
onClickSecondaryButton?: () => void;
onDismiss?: () => void;
timestamp?: Date;
type: NotificationType;
}
// @public
export interface AdapterError extends Error {
innerError: Error;
target: string;
timestamp: Date;
}
// @public
export type AdapterErrors = {
[target: string]: AdapterError;
};
// @public
export interface AdapterNotification {
target: string;
timestamp: Date;
}
// @public
export type AdapterNotifications = {
[target: string]: AdapterNotification;
};
// @public
export interface AdapterState<TState> {
getState(): TState;
offStateChange(handler: (state: TState) => void): void;
onStateChange(handler: (state: TState) => void): void;
}
// @public
export type AreEqual<A extends (props: any) => JSX.Element | undefined, B extends (props: any) => JSX.Element | undefined> = true extends AreTypeEqual<A, B> & AreParamEqual<A, B> ? true : false;
// @public
export type AreParamEqual<A extends (props: any) => JSX.Element | undefined, B extends (props: any) => JSX.Element | undefined> = AreTypeEqual<Required<Parameters<A>[0]>, Required<Parameters<B>[0]>>;
// @public
export type AreTypeEqual<A, B> = A extends B ? (B extends A ? true : false) : false;
// @public
export interface AttachmentMetadata {
id: string;
name: string;
url: string;
}
// @public
export type AvatarPersonaData = {
text?: string;
imageUrl?: string;
imageInitials?: string;
initialsColor?: PersonaInitialsColor | string;
initialsTextColor?: string;
showUnknownPersonaCoin?: boolean;
};
// @public
export type AvatarPersonaDataCallback = (userId: string) => Promise<AvatarPersonaData>;
// @public
export type AzureCommunicationCallAdapterArgs = {
userId: CommunicationUserIdentifier;
displayName: string;
credential: CommunicationTokenCredential;
locator: CallAdapterLocator;
options?: AzureCommunicationCallAdapterOptions;
};
// @public
export type AzureCommunicationCallAdapterOptions = CommonCallAdapterOptions;
// @public
export type AzureCommunicationCallWithChatAdapterArgs = {
endpoint: string;
userId: CommunicationUserIdentifier;
displayName: string;
credential: CommunicationTokenCredential;
locator: CallAndChatLocator | TeamsMeetingLinkLocator | TeamsMeetingIdLocator;
alternateCallerId?: string;
callAdapterOptions?: AzureCommunicationCallAdapterOptions;
};
// @public
export type AzureCommunicationCallWithChatAdapterFromClientArgs = {
callLocator: CallAdapterLocator | TeamsMeetingLinkLocator;
callAgent: CallAgent;
callClient: StatefulCallClient;
chatClient: StatefulChatClient;
chatThreadClient: ChatThreadClient;
callAdapterOptions?: AzureCommunicationCallAdapterOptions;
};
// @public
export type AzureCommunicationChatAdapterArgs = {
endpoint: string;
userId: CommunicationUserIdentifier;
displayName: string;
credential: CommunicationTokenCredential;
threadId: string;
};
// @public
export type AzureCommunicationOutboundCallAdapterArgs = {
userId: CommunicationUserIdentifier;
displayName: string;
credential: CommunicationTokenCredential;
targetCallees: StartCallIdentifier[];
alternateCallerId?: string;
options?: AzureCommunicationCallAdapterOptions;
};
// @public
export interface BaseCompositeProps<TIcons extends Record<string, JSX.Element>> {
fluentTheme?: PartialTheme | Theme;
icons?: TIcons;
locale?: CompositeLocale;
onFetchAvatarPersonaData?: AvatarPersonaDataCallback;
onFetchParticipantMenuItems?: ParticipantMenuItemsCallback;
rtl?: boolean;
}
// @public
export interface BaseCustomStyles {
root?: IStyle;
}
// @public
export interface BreakoutRoomsState {
assignedBreakoutRoom?: BreakoutRoom;
breakoutRoomDisplayName?: string;
breakoutRoomSettings?: BreakoutRoomsSettings;
}
// @public
export interface CallAdapter extends CommonCallAdapter {
// @deprecated
joinCall(microphoneOn?: boolean): Call | undefined;
joinCall(options?: JoinCallOptions): Call | undefined;
startCall(participants: string[], options?: StartCallOptions): Call | undefined;
startCall(participants: StartCallIdentifier[], options?: StartCallOptions): Call | undefined;
}
// @public
export type CallAdapterCallEndedEvent = {
callId: string;
code?: number;
subCode?: number;
};
// @public @deprecated
export interface CallAdapterCallManagement extends CallAdapterCallOperations {
// @deprecated
joinCall(microphoneOn?: boolean): Call | undefined;
joinCall(options?: JoinCallOptions): Call | undefined;
startCall(participants: string[], options?: StartCallOptions): Call | undefined;
startCall(participants: StartCallIdentifier[], options?: StartCallOptions): Call | undefined;
}
// @public
export interface CallAdapterCallOperations {
addParticipant(participant: PhoneNumberIdentifier, options?: AddPhoneNumberOptions): Promise<void>;
// (undocumented)
addParticipant(participant: CommunicationUserIdentifier): Promise<void>;
createStreamView(remoteUserId?: string, options?: VideoStreamOptions): Promise<void | CreateVideoStreamViewResult>;
disposeLocalVideoStreamView(): Promise<void>;
disposeRemoteVideoStreamView(remoteUserId: string): Promise<void>;
disposeScreenShareStreamView(remoteUserId: string): Promise<void>;
// @deprecated
disposeStreamView(remoteUserId?: string, options?: VideoStreamOptions): Promise<void>;
forbidAudio(userIds: string[]): Promise<void>;
forbidOthersAudio(): Promise<void>;
forbidOthersVideo(): Promise<void>;
forbidVideo(userIds: string[]): Promise<void>;
holdCall(): Promise<void>;
leaveCall(forEveryone?: boolean): Promise<void>;
lowerHand(): Promise<void>;
mute(): Promise<void>;
muteAllRemoteParticipants(): Promise<void>;
muteParticipant(userId: string): Promise<void>;
onReactionClick(reaction: Reaction_2): Promise<void>;
permitAudio(userIds: string[]): Promise<void>;
permitOthersAudio(): Promise<void>;
permitOthersVideo(): Promise<void>;
permitVideo(userIds: string[]): Promise<void>;
raiseHand(): Promise<void>;
removeParticipant(userId: string): Promise<void>;
removeParticipant(participant: CommunicationIdentifier): Promise<void>;
resumeCall(): Promise<void>;
returnFromBreakoutRoom(): Promise<void>;
sendDtmfTone(dtmfTone: DtmfTone_2): Promise<void>;
setCaptionLanguage(language: string): Promise<void>;
setSpokenLanguage(language: string): Promise<void>;
startCamera(options?: VideoStreamOptions): Promise<void>;
startCaptions(options?: StartCaptionsAdapterOptions): Promise<void>;
startNoiseSuppressionEffect(): Promise<void>;
startScreenShare(): Promise<void>;
startSpotlight(userIds?: string[]): Promise<void>;
startVideoBackgroundEffect(videoBackgroundEffect: VideoBackgroundEffect): Promise<void>;
stopAllSpotlight(): Promise<void>;
stopCamera(): Promise<void>;
stopCaptions(options?: StopCaptionsAdapterOptions): Promise<void>;
stopNoiseSuppressionEffect(): Promise<void>;
stopScreenShare(): Promise<void>;
stopSpotlight(userIds?: string[]): Promise<void>;
stopVideoBackgroundEffects(): Promise<void>;
submitSurvey(survey: CallSurvey): Promise<CallSurveyResponse | undefined>;
unmute(): Promise<void>;
updateBackgroundPickerImages(backgroundImages: VideoBackgroundImage[]): void;
updateSelectedVideoBackgroundEffect(selectedVideoBackground: VideoBackgroundEffect): void;
}
// @public
export type CallAdapterClientState = {
userId: CommunicationIdentifierKind;
displayName?: string;
call?: CallState;
targetCallees?: CommunicationIdentifier[];
devices: DeviceManagerState;
endedCall?: CallState;
isTeamsCall: boolean;
isTeamsMeeting: boolean;
isRoomsCall: boolean;
latestErrors: AdapterErrors;
latestNotifications: AdapterNotifications;
alternateCallerId?: string;
environmentInfo?: EnvironmentInfo;
cameraStatus?: 'On' | 'Off';
videoBackgroundImages?: VideoBackgroundImage[];
onResolveVideoEffectDependency?: () => Promise<VideoBackgroundEffectsDependency>;
onResolveDeepNoiseSuppressionDependency?: () => Promise<DeepNoiseSuppressionEffectDependency>;
deepNoiseSuppressionOnByDefault?: boolean;
hideDeepNoiseSuppressionButton?: boolean;
selectedVideoBackgroundEffect?: VideoBackgroundEffect;
acceptedTransferCallState?: CallState;
hideAttendeeNames?: boolean;
sounds?: CallingSounds;
reactions?: ReactionResources;
};
// @public
export interface CallAdapterDeviceManagement {
askDevicePermission(constrain: PermissionConstraints): Promise<DeviceAccess>;
queryCameras(): Promise<VideoDeviceInfo[]>;
queryMicrophones(): Promise<AudioDeviceInfo[]>;
querySpeakers(): Promise<AudioDeviceInfo[]>;
setCamera(sourceInfo: VideoDeviceInfo, options?: VideoStreamOptions): Promise<void>;
setMicrophone(sourceInfo: AudioDeviceInfo): Promise<void>;
setSpeaker(sourceInfo: AudioDeviceInfo): Promise<void>;
}
// @public
export type CallAdapterLocator = TeamsMeetingLinkLocator | GroupCallLocator | RoomCallLocator | TeamsMeetingIdLocator;
// @public
export type CallAdapterState = CallAdapterUiState & CallAdapterClientState;
// @public
export interface CallAdapterSubscribers {
off(event: 'participantsJoined', listener: ParticipantsJoinedListener): void;
off(event: 'participantsLeft', listener: ParticipantsLeftListener): void;
off(event: 'isMutedChanged', listener: IsMutedChangedListener): void;
off(event: 'callIdChanged', listener: CallIdChangedListener): void;
off(event: 'isLocalScreenSharingActiveChanged', listener: IsLocalScreenSharingActiveChangedListener): void;
off(event: 'displayNameChanged', listener: DisplayNameChangedListener): void;
off(event: 'isSpeakingChanged', listener: IsSpeakingChangedListener): void;
off(event: 'callEnded', listener: CallEndedListener): void;
off(event: 'diagnosticChanged', listener: DiagnosticChangedEventListner): void;
off(event: 'selectedMicrophoneChanged', listener: PropertyChangedEvent): void;
off(event: 'selectedSpeakerChanged', listener: PropertyChangedEvent): void;
off(event: 'error', listener: (e: AdapterError) => void): void;
off(event: 'captionsReceived', listener: CaptionsReceivedListener): void;
off(event: 'isCaptionsActiveChanged', listener: IsCaptionsActiveChangedListener): void;
off(event: 'isCaptionLanguageChanged', listener: IsCaptionLanguageChangedListener): void;
off(event: 'isSpokenLanguageChanged', listener: IsSpokenLanguageChangedListener): void;
off(event: 'transferAccepted', listener: TransferAcceptedListener): void;
off(event: 'capabilitiesChanged', listener: CapabilitiesChangedListener): void;
off(event: 'roleChanged', listener: PropertyChangedEvent): void;
off(event: 'spotlightChanged', listener: SpotlightChangedListener): void;
off(event: 'mutedByOthers', listener: PropertyChangedEvent): void;
off(event: 'breakoutRoomsUpdated', listener: BreakoutRoomsUpdatedListener): void;
on(event: 'participantsJoined', listener: ParticipantsJoinedListener): void;
on(event: 'participantsLeft', listener: ParticipantsLeftListener): void;
on(event: 'isMutedChanged', listener: IsMutedChangedListener): void;
on(event: 'callIdChanged', listener: CallIdChangedListener): void;
on(event: 'isLocalScreenSharingActiveChanged', listener: IsLocalScreenSharingActiveChangedListener): void;
on(event: 'displayNameChanged', listener: DisplayNameChangedListener): void;
on(event: 'isSpeakingChanged', listener: IsSpeakingChangedListener): void;
on(event: 'callEnded', listener: CallEndedListener): void;
on(event: 'diagnosticChanged', listener: DiagnosticChangedEventListner): void;
on(event: 'selectedMicrophoneChanged', listener: PropertyChangedEvent): void;
on(event: 'selectedSpeakerChanged', listener: PropertyChangedEvent): void;
on(event: 'error', listener: (e: AdapterError) => void): void;
on(event: 'captionsReceived', listener: CaptionsReceivedListener): void;
on(event: 'isCaptionsActiveChanged', listener: IsCaptionsActiveChangedListener): void;
on(event: 'isCaptionLanguageChanged', listener: IsCaptionLanguageChangedListener): void;
on(event: 'isSpokenLanguageChanged', listener: IsSpokenLanguageChangedListener): void;
on(event: 'transferAccepted', listener: TransferAcceptedListener): void;
on(event: 'capabilitiesChanged', listener: CapabilitiesChangedListener): void;
on(event: 'roleChanged', listener: PropertyChangedEvent): void;
on(event: 'spotlightChanged', listener: SpotlightChangedListener): void;
on(event: 'mutedByOthers', listener: PropertyChangedEvent): void;
on(event: 'breakoutRoomsUpdated', listener: BreakoutRoomsUpdatedListener): void;
}
// @public
export type CallAdapterUiState = {
isLocalPreviewMicrophoneEnabled: boolean;
page: CallCompositePage;
};
// @public
export const CallAgentProvider: (props: CallAgentProviderProps) => JSX.Element;
// @public
export interface CallAgentProviderProps {
// (undocumented)
callAgent?: CallAgent | TeamsCallAgent;
// (undocumented)
children: React_2.ReactNode;
}
// @public
export interface CallAgentState {
displayName?: string;
}
// @public
export interface CallAndChatLocator {
callLocator: GroupCallLocator;
chatThreadId: string;
}
// @public
export const CallClientProvider: (props: CallClientProviderProps) => JSX.Element;
// @public
export interface CallClientProviderProps {
// (undocumented)
callClient: StatefulCallClient;
// (undocumented)
children: React_2.ReactNode;
}
// @public
export interface CallClientState {
alternateCallerId?: string;
callAgent?: CallAgentState;
calls: {
[key: string]: CallState;
};
callsEnded: {
[key: string]: CallState;
};
deviceManager: DeviceManagerState;
environmentInfo?: EnvironmentInfo;
incomingCalls: {
[key: string]: IncomingCallState | TeamsIncomingCallState;
};
incomingCallsEnded: {
[key: string]: IncomingCallState | TeamsIncomingCallState;
};
latestErrors: CallErrors;
latestNotifications: CallNotifications;
userId: CommunicationIdentifierKind;
}
// @public
export const CallComposite: (props: CallCompositeProps) => JSX.Element;
// @public
export type CallCompositeIcons = {
ControlBarPeopleButton?: JSX.Element;
ControlButtonCameraOff?: JSX.Element;
ControlButtonCameraOn?: JSX.Element;
ControlButtonEndCall?: JSX.Element;
ControlButtonMicOff?: JSX.Element;
ControlButtonMicOn?: JSX.Element;
ControlButtonOptions?: JSX.Element;
ControlButtonParticipants?: JSX.Element;
ControlButtonScreenShareStart?: JSX.Element;
ControlButtonScreenShareStop?: JSX.Element;
ControlButtonCameraProhibited?: JSX.Element;
ControlButtonCameraProhibitedSmall?: JSX.Element;
ControlButtonMicProhibited?: JSX.Element;
ControlButtonMicProhibitedSmall?: JSX.Element;
ControlButtonRaiseHand?: JSX.Element;
ControlButtonLowerHand?: JSX.Element;
ControlButtonExitSpotlight?: JSX.Element;
RaiseHandContextualMenuItem?: JSX.Element;
ReactionContextualMenuItem?: JSX.Element;
LowerHandContextualMenuItem?: JSX.Element;
ReactionButtonIcon?: JSX.Element;
ErrorBarCallCameraAccessDenied?: JSX.Element;
ErrorBarCallCameraAlreadyInUse?: JSX.Element;
ErrorBarCallLocalVideoFreeze?: JSX.Element;
ErrorBarCallMacOsCameraAccessDenied?: JSX.Element;
ErrorBarCallMacOsMicrophoneAccessDenied?: JSX.Element;
ErrorBarCallMicrophoneAccessDenied?: JSX.Element;
ErrorBarCallMicrophoneMutedBySystem?: JSX.Element;
ErrorBarCallMicrophoneUnmutedBySystem?: JSX.Element;
ErrorBarCallNetworkQualityLow?: JSX.Element;
ErrorBarCallNoMicrophoneFound?: JSX.Element;
ErrorBarCallNoSpeakerFound?: JSX.Element;
ErrorBarClear?: JSX.Element;
HorizontalGalleryLeftButton?: JSX.Element;
HorizontalGalleryRightButton?: JSX.Element;
LobbyScreenConnectingToCall?: JSX.Element;
LobbyScreenWaitingToBeAdmitted?: JSX.Element;
LocalDeviceSettingsCamera?: JSX.Element;
LocalDeviceSettingsMic?: JSX.Element;
LocalDeviceSettingsSpeaker?: JSX.Element;
LocalPreviewPlaceholder?: JSX.Element;
Muted?: JSX.Element;
NetworkReconnectIcon?: JSX.Element;
NoticePageAccessDeniedTeamsMeeting?: JSX.Element;
NoticePageJoinCallFailedDueToNoNetwork?: JSX.Element;
NoticePageLeftCall?: JSX.Element;
NoticePageRemovedFromCall?: JSX.Element;
NoticePageCallRejected?: JSX.Element;
NoticePageNotInvitedToRoom?: JSX.Element;
NoticePageRoomNotFound?: JSX.Element;
NoticePageRoomNotValid?: JSX.Element;
NoticePageCallTimeout?: JSX.Element;
OptionsCamera?: JSX.Element;
OptionsMic?: JSX.Element;
OptionsSpeaker?: JSX.Element;
ParticipantItemMicOff?: JSX.Element;
ParticipantItemOptions?: JSX.Element;
ParticipantItemOptionsHovered?: JSX.Element;
ParticipantItemScreenShareStart?: JSX.Element;
VideoTileMicOff?: JSX.Element;
LocalCameraSwitch?: JSX.Element;
PeoplePaneAddPerson?: JSX.Element;
PeoplePaneOpenDialpad?: JSX.Element;
DialpadStartCall?: JSX.Element;
NoticePageInviteToRoomRemoved?: JSX.Element;
BlurVideoBackground?: JSX.Element;
RemoveVideoBackgroundEffect?: JSX.Element;
GalleryOptions?: JSX.Element;
SpeakerGalleryLayout?: JSX.Element;
FloatingLocalVideoGalleryLayout?: JSX.Element;
DefaultGalleryLayout?: JSX.Element;
FocusedContentGalleryLayout?: JSX.Element;
OverflowGalleryTop?: JSX.Element;
LargeGalleryLayout?: JSX.Element;
DefaultCustomButton?: JSX.Element;
DtmfDialpadButton?: JSX.Element;
PhoneNumberButton?: JSX.Element;
JoinByPhoneDialStepIcon?: JSX.Element;
JoinByPhoneConferenceIdIcon?: JSX.Element;
JoinByPhoneWaitToBeAdmittedIcon?: JSX.Element;
PeoplePaneMoreButton?: JSX.Element;
StopAllSpotlightMenuButton?: JSX.Element;
};
// @public
export type CallCompositeLoaderProps = {
userId: CommunicationUserIdentifier;
credential: CommunicationTokenCredential;
displayName: string;
locator: CallAdapterLocator;
callAdapterOptions?: AzureCommunicationCallAdapterOptions;
callCompositeOptions?: CallCompositeOptions;
};
// @public
export type CallCompositeOptions = {
captionsBanner?: {
height: 'full' | 'default';
};
errorBar?: boolean;
callControls?: boolean | CallControlOptions;
remoteVideoTileMenuOptions?: RemoteVideoTileMenuOptions;
localVideoTile?: boolean | LocalVideoTileOptions;
videoTilesOptions?: VideoTilesOptions;
disableAutoShowDtmfDialer?: boolean | DtmfDialPadOptions;
galleryOptions?: {
layout?: VideoGalleryLayout;
};
surveyOptions?: {
disableSurvey?: boolean;
onSurveyClosed?: (surveyState: 'sent' | 'skipped' | 'error', surveyError?: string) => void;
onSurveySubmitted?: (callId: string, surveyId: string,
submittedSurvey: CallSurvey,
improvementSuggestions: CallSurveyImprovementSuggestions) => Promise<void>;
};
branding?: {
logo?: {
url: string;
alt?: string;
shape?: 'unset' | 'circle';
};
backgroundImage?: {
url: string;
};
};
spotlight?: {
hideSpotlightButtons?: boolean;
};
};
// @public
export type CallCompositePage = 'accessDeniedTeamsMeeting' | 'call' | 'configuration' | 'hold' | 'joinCallFailedDueToNoNetwork' | 'leftCall' | 'leaving' | 'lobby' | 'removedFromCall' | 'transferring' | 'badRequest' | 'returningFromBreakoutRoom';
// @public
export interface CallCompositeProps extends BaseCompositeProps<CallCompositeIcons> {
adapter: CommonCallAdapter;
callInvitationUrl?: string;
formFactor?: 'desktop' | 'mobile';
options?: CallCompositeOptions;
}
// @public
export interface CallCompositeStrings {
addSpotlightMenuLabel: string;
blurBackgroundEffectButtonLabel?: string;
blurBackgroundTooltip?: string;
breakoutRoomJoinedNotificationTitle: string;
callRejectedMoreDetails?: string;
callRejectedTitle?: string;
callTimeoutBotDetails?: string;
callTimeoutBotTitle?: string;
callTimeoutDetails?: string;
callTimeoutTitle?: string;
cameraLabel: string;
cameraOffBackgroundEffectWarningText?: string;
cameraPermissionDenied: string;
cameraTurnedOff: string;
capabilityChangedNotification?: CapabilityChangedNotificationStrings;
captionLanguageStrings?: CaptionLanguageStrings;
captionsBannerMoreButtonCallingLabel?: string;
captionsBannerMoreButtonTooltip?: string;
captionsBannerSpinnerText?: string;
captionsSettingsCancelButtonLabel?: string;
captionsSettingsCaptionLanguageDropdownInfoText?: string;
captionsSettingsCaptionLanguageDropdownLabel?: string;
captionsSettingsCloseModalButtonAriaLabel?: string;
captionsSettingsConfirmButtonLabel?: string;
captionsSettingsLabel?: string;
captionsSettingsModalAriaLabel?: string;
captionsSettingsModalTitle?: string;
captionsSettingsSpokenLanguageDropdownInfoText?: string;
captionsSettingsSpokenLanguageDropdownLabel?: string;
chatButtonLabel: string;
close: string;
complianceBannerNowOnlyRecording: string;
complianceBannerNowOnlyTranscription: string;
complianceBannerRecordingAndTranscriptionSaved: string;
complianceBannerRecordingAndTranscriptionStarted: string;
complianceBannerRecordingAndTranscriptionStopped: string;
complianceBannerRecordingSaving: string;
complianceBannerRecordingStarted: string;
complianceBannerRecordingStopped: string;
complianceBannerTranscriptionConsent: string;
complianceBannerTranscriptionSaving: string;
complianceBannerTranscriptionStarted: string;
complianceBannerTranscriptionStopped: string;
configurationPageCallDetails?: string;
configurationPageCameraIsLoadingLabel?: string;
configurationPageTitle: string;
configurationPageVideoEffectsButtonLabel?: string;
copyInviteLinkActionedAriaLabel: string;
copyInviteLinkButtonActionedLabel?: string;
copyInviteLinkButtonLabel?: string;
defaultPlaceHolder: string;
dialpadCloseModalButtonAriaLabel?: string;
dialpadModalAriaLabel?: string;
dialpadModalTitle?: string;
dialpadStartCallButtonLabel?: string;
dismissModalAriaLabel?: string;
dismissSidePaneButtonLabel?: string;
dtmfDialerButtonLabel?: string;
dtmfDialerButtonTooltipOff?: string;
dtmfDialerButtonTooltipOn?: string;
dtmfDialerMoreButtonLabelOff?: string;
dtmfDialerMoreButtonLabelOn?: string;
dtmfDialpadPlaceholderText?: string;
endCallConfirmButtonLabel?: string;
endCallConfirmDialogContent?: string;
endCallConfirmDialogTitle?: string;
endOfSurveyText: string;
exitSpotlightButtonLabel: string;
exitSpotlightButtonTooltip: string;
failedToJoinCallDueToNoNetworkMoreDetails?: string;
failedToJoinCallDueToNoNetworkTitle: string;
failedToJoinTeamsMeetingReasonAccessDeniedMoreDetails?: string;
failedToJoinTeamsMeetingReasonAccessDeniedTitle: string;
forbidAudioMenuLabel: string;
forbidOthersAudioCancelButtonLabel: string;
forbidOthersAudioConfirmButtonLabel: string;
forbidOthersAudioDialogContent: string;
forbidOthersAudioDialogTitle: string;
forbidOthersAudioMenuLabel: string;
forbidOthersVideoCancelButtonLabel: string;
forbidOthersVideoConfirmButtonLabel: string;
forbidOthersVideoDialogContent: string;
forbidOthersVideoDialogTitle: string;
forbidOthersVideoMenuLabel: string;
forbidVideoMenuLabel: string;
hangUpCancelButtonLabel?: string;
holdScreenLabel?: string;
invalidMeetingIdentifier: string;
inviteToRoomRemovedDetails?: string;
inviteToRoomRemovedTitle: string;
joinBreakoutRoomBannerButtonLabel: string;
joinBreakoutRoomBannerTitle: string;
joinBreakoutRoomButtonLabel: string;
learnMore: string;
leaveBreakoutRoomAndMeetingButtonLabel: string;
leaveConfirmButtonLabel?: string;
leaveConfirmDialogContent?: string;
leaveConfirmDialogTitle?: string;
leavingCallTitle?: string;
leftCallMoreDetails?: string;
leftCallTitle: string;
liveCaptionsLabel?: string;
lobbyScreenConnectingToCallMoreDetails?: string;
lobbyScreenConnectingToCallTitle: string;
lobbyScreenWaitingToBeAdmittedMoreDetails?: string;
lobbyScreenWaitingToBeAdmittedTitle: string;
manyParticipantsJoined: string;
manyParticipantsLeft: string;
manyUnnamedParticipantsJoined: string;
manyUnnamedParticipantsLeft: string;
microphonePermissionDenied: string;
microphoneToggleInLobbyNotAllowed: string;
moreButtonCallingLabel: string;
moreButtonGalleryControlLabel?: string;
moreButtonGalleryDefaultLayoutLabel?: string;
moreButtonGalleryFloatingLocalLayoutLabel?: string;
moreButtonGalleryFocusedContentLayoutLabel?: string;
moreButtonGalleryPositionToggleLabel?: string;
moreButtonGallerySpeakerLayoutLabel?: string;
moreButtonLargeGalleryDefaultLayoutLabel?: string;
moreButtonTogetherModeLayoutLabel?: string;
muteAllCancelButtonLabel: string;
muteAllConfirmButtonLabel: string;
muteAllDialogContent: string;
muteAllDialogTitle: string;
muteAllMenuLabel: string;
mutedMessage: string;
networkReconnectMoreDetails: string;
networkReconnectTitle: string;
noCamerasLabel: string;
noMicrophonesLabel: string;
noSpeakersLabel: string;
notInvitedToRoomDetails?: string;
notInvitedToRoomTitle: string;
openDialpadButtonLabel?: string;
openDtmfDialpadLabel?: string;
outboundCallingNoticeString?: string;
participantCouldNotBeReachedMoreDetails?: string;
participantCouldNotBeReachedTitle?: string;
participantIdIsMalformedMoreDetails?: string;
participantIdIsMalformedTitle?: string;
participantJoinedNoticeString: string;
participantLeftNoticeString: string;
peopleButtonLabel: string;
peopleButtonTooltipClose: string;
peopleButtonTooltipOpen: string;
peoplePaneAddPeopleButtonLabel?: string;
peoplePaneMoreButtonAriaLabel: string;
peoplePaneSubTitle?: string;
peoplePaneTitle: string;
permissionToReachTargetParticipantNotAllowedMoreDetails?: string;
permissionToReachTargetParticipantNotAllowedTitle?: string;
permitAudioMenuLabel: string;
permitOthersAudioCancelButtonLabel: string;
permitOthersAudioConfirmButtonLabel: string;
permitOthersAudioDialogContent: string;
permitOthersAudioDialogTitle: string;
permitOthersAudioMenuLabel: string;
permitOthersVideoCancelButtonLabel: string;
permitOthersVideoConfirmButtonLabel: string;
permitOthersVideoDialogContent: string;
permitOthersVideoDialogTitle: string;
permitOthersVideoMenuLabel: string;
permitVideoMenuLabel: string;
phoneCallMoreButtonLabel: string;
pinParticipantLimitReachedMenuLabel: string;
pinParticipantMenuItemAriaLabel: string;
pinParticipantMenuLabel: string;
privacyPolicy: string;
rejoinCallButtonLabel: string;
removeBackgroundEffectButtonLabel?: string;
removeBackgroundTooltip?: string;
removedFromCallMoreDetails?: string;
removedFromCallTitle: string;
removeMenuLabel?: string;
resumeCallButtonAriaLabel?: string;
resumeCallButtonLabel?: string;
resumingCallButtonAriaLabel?: string;
resumingCallButtonLabel?: string;
returnFromBreakoutRoomBannerButtonLabel: string;
returnFromBreakoutRoomBannerTitle: string;
returnFromBreakoutRoomButtonLabel: string;
returnToCallButtonAriaDescription?: string;
returnToCallButtonAriaLabel?: string;
roomNotFoundDetails?: string;
roomNotFoundTitle: string;
roomNotValidDetails?: string;
roomNotValidTitle: string;
selectedPeopleButtonLabel: string;
soundLabel: string;
spokenLanguageStrings?: SpokenLanguageStrings;
spotlightLimitReachedMenuTitle: string;
spotlightPrompt: SpotlightPromptStrings;
starRatingAriaLabel: string;
starSurveyFiveStarText: string;
starSurveyFourStarText: string;
starSurveyHelperText: string;
starSurveyOneStarText: string;
starSurveyThreeStarText: string;
starSurveyTwoStarText: string;
startCallButtonLabel: string;
startCaptionsButtonOffLabel?: string;
startCaptionsButtonOnLabel?: string;
startCaptionsButtonTooltipOffContent?: string;
startCaptionsButtonTooltipOnContent?: string;
startSpotlightMenuLabel: string;
stopAllSpotlightMenuLabel: string;
stopSpotlightMenuLabel: string;
stopSpotlightOnSelfMenuLabel: string;
surveyConfirmButtonLabel: string;
surveyIssues: SurveyIssues;
surveyIssuesHeadingStrings: SurveyIssuesHeadingStrings;
surveySkipButtonLabel: string;
surveyTitle: string;
tagsSurveyHelperText: string;
tagsSurveyQuestion: string;
tagsSurveyTextFieldDefaultText: string;
threeParticipantJoinedNoticeString: string;
threeParticipantLeftNoticeString: string;
transferPageNoticeString: string;
transferPageTransferorText: string;
transferPageTransferTargetText: string;
transferPageUnknownTransferorDisplayName: string;
transferPageUnknownTransferTargetDisplayName: string;
twoParticipantJoinedNoticeString: string;
twoParticipantLeftNoticeString: string;
unableToResolveTenantMoreDetails?: string;
unableToResolveTenantTitle?: string;
unableToStartVideoEffect?: string;
unnamedParticipantString: string;
unpinParticipantMenuItemAriaLabel: string;
unpinParticipantMenuLabel: string;
videoEffectsPaneAriaLabel: string;
videoEffectsPaneBackgroundSelectionTitle: string;
videoEffectsPaneTitle: string;
}
// @public
export type CallControlDisplayType = 'default' | 'compact';
// @public
export type CallControlOptions = CommonCallControlOptions & {
participantsButton?: boolean | {
disabled: boolean;
};
legacyControlBarExperience?: boolean;
};
// @public
export type CallEndedListener = (event: CallAdapterCallEndedEvent) => void;
// @public
export class CallError extends Error {
constructor(target: CallErrorTarget, innerError: Error, timestamp?: Date);
code?: number;
innerError: Error;
subCode?: number;
target: CallErrorTarget;
timestamp: Date;
}
// @public
export type CallErrorBarSelector = (state: CallClientState, props: CallingBaseSelectorProps) => {
activeErrorMessages: ActiveErrorMessage[];
};
// @public
export type CallErrors = {
[target in CallErrorTarget]: CallError;
};
// @public
export type CallErrorTarget = 'Call.addParticipant' | 'Call.dispose' | 'Call.feature' | 'Call.hangUp' | 'Call.hold' | 'Call.mute' | 'Call.muteIncomingAudio' | 'Call.off' | 'Call.on' | 'Call.removeParticipant' | 'Call.resume' | 'Call.sendDtmf' | 'Call.startAudio' | 'Call.startScreenSharing' | 'Call.startVideo' | 'Call.stopScreenSharing' | 'Call.stopAudio' | 'Call.stopVideo' | 'Call.unmute' | 'Call.unmuteIncomingAudio' | 'CallAgent.dispose' | 'CallAgent.feature' | 'CallAgent.join' | 'CallAgent.off' | 'CallAgent.on' | 'CallAgent.startCall' | 'CallClient.createCallAgent' | 'CallClient.createTeamsCallAgent' | 'CallClient.feature' | 'CallClient.getDeviceManager' | 'CallClient.getEnvironmentInfo' | 'DeviceManager.askDevicePermission' | 'DeviceManager.getCameras' | 'DeviceManager.getMicrophones' | 'DeviceManager.getSpeakers' | 'DeviceManager.off' | 'DeviceManager.on' | 'DeviceManager.selectMicrophone' | 'DeviceManager.selectSpeaker' | 'IncomingCall.accept' | 'IncomingCall.reject' | 'TeamsCall.addParticipant' | 'VideoEffectsFeature.startEffects' | 'Call.mutedByOthers' | 'Call.muteAllRemoteParticipants' | 'Call.setConstraints';
// @public
export type CallIdChangedListener = (event: {
callId: string;
}) => void;
// @public
export interface CallInfoState {
groupId?: string;
kind: IncomingCallKind;
participantId: string;
threadId?: string;
}
// @public
export type CallingBaseSelectorProps = {
callId: string;
};
// @public
export interface CallingHandlers extends CommonCallingHandlers {
// (undocumented)
onStartCall: (participants: CommunicationIdentifier[], options?: StartCallOptions) => Call | undefined;
}
// @public
export type CallingHandlersOptions = {
onResolveVideoBackgroundEffectsDependency?: () => Promise<VideoBackgroundEffectsDependency>;
onResolveDeepNoiseSuppressionDependency?: () => Promise<DeepNoiseSuppressionEffectDependency>;
};
// @public
export type CallingReturnProps<Component extends (props: any) => JSX.Element> = GetCallingSelector<Component> extends (state: CallClientState, props: any) => any ? ReturnType<GetCallingSelector<Component>> & Common<CallingHandlers, Parameters<Component>[0]> : never;
// @public
export type CallingSounds = {
callEnded?: SoundEffect;
callRinging?: SoundEffect;
callBusy?: SoundEffect;
};
// @public
export interface CallingTheme {
// (undocumented)
callingPalette: {
callRed: string;
callRedDark: string;
callRedDarker: string;
iconWhite: string;
raiseHandGold: string;
videoTileLabelBackgroundLight: string;
};
}
// @public (undocumented)
export interface CallNotification {
// (undocumented)
target: NotificationTarget;
// (undocumented)
timestamp: Date;
}
// @public (undocumented)
export type CallNotifications = {
[target in NotificationTarget]: CallNotification;
};
// @public
export type CallParticipantListParticipant = ParticipantListParticipant & {
state: ParticipantState;
isScreenSharing?: boolean;
isMuted?: boolean;
isSpeaking?: boolean;
raisedHand?: RaisedHand;
reaction?: Reaction;
spotlight?: Spotlight;
mediaAccess?: MediaAccess;
};
// @public
export const CallProvider: (props: CallProviderProps) => JSX.Element;
// @public
export interface CallProviderProps {
// (undocumented)
call?: Call | TeamsCall;
// (undocumented)
children: React_2.ReactNode;
}
// @public
export interface CallState {
breakoutRooms?: BreakoutRoomsState;
callEndReason?: CallEndReason;
callerInfo: CallerInfo;
capabilitiesFeature?: CapabilitiesFeatureState;
captionsFeature: CaptionsCallFeatureState;
contentSharingRemoteParticipant?: string;
diagnostics: DiagnosticsCallFeatureState;
direction: CallDirection;
dominantSpeakers?: DominantSpeakersInfo;
endTime: Date | undefined;
hideAttendeeNames?: boolean;
id: string;
info?: TeamsCallInfo;
isMuted: boolean;
isScreenSharingOn: boolean;
kind: CallKind;
localParticipantReaction?: ReactionState;
localVideoStreams: LocalVideoStreamState[];
meetingConference?: {
conferencePhones: ConferencePhoneInfo[];
};
meetingMediaAccess?: MediaAccessState;
optimalVideoCount: OptimalVideoCountFeatureState;
pptLive: PPTLiveCallFeatureState;
raiseHand: RaiseHandCallFeature;
recording: RecordingCallFeature;
remoteParticipants: {
[keys: string]: RemoteParticipantState;
};
remoteParticipantsEnded: {
[keys: string]: RemoteParticipantState;
};
role?: ParticipantRole;
screenShareRemoteParticipant?: string;
spotlight?: SpotlightCallFeatureState;
startTime: Date;
state: CallState_2;
transcription: TranscriptionCallFeature;
transfer: TransferFeature;
}
// @public
export interface CallSurveyImprovementSuggestions {
audioRating?: string;
overallRating?: string;
screenshareRating?: string;
videoRating?: string;
}
// @public
export interface CallWithChatAdapter extends CallWithChatAdapterManagement, AdapterState<CallWithChatAdapterState>, Disposable_2, CallWithChatAdapterSubscriptions {
}
// @public
export interface CallWithChatAdapterManagement {
addParticipant(participant: PhoneNumberIdentifier, options?: AddPhoneNumberOptions): Promise<void>;
// (undocumented)
addParticipant(participant: CommunicationUserIdentifier): Promise<void>;
askDevicePermission(constrain: PermissionConstraints): Promise<DeviceAccess>;
createStreamView(remoteUserId?: string, options?: VideoStreamOptions): Promise<void | CreateVideoStreamViewResult>;
deleteMessage(messageId: string): Promise<void>;
disposeLocalVideoStreamView(): Promise<void>;
disposeRemoteVideoStreamView(remoteUserId: string): Promise<void>;
disposeScreenShareStreamView(remoteUserId: string): Promise<void>;
disposeStreamView(remoteUserId?: string, options?: VideoStreamOptions): Promise<void>;
// (undocumented)
downloadResourceToCache(resourceDetails: ResourceDetails): Promise<void>;
fetchInitialData(): Promise<void>;
forbidAudio: (userIds: string[]) => Promise<void>;
forbidOthersAudio: () => Promise<void>;
forbidOthersVideo: () => Promise<void>;
forbidVideo: (userIds: string[]) => Promise<void>;
holdCall(): Promise<void>;
// @deprecated
joinCall(microphoneOn?: boolean): Call | undefined;
joinCall(options?: JoinCallOptions): Call | undefined;
leaveCall(forEveryone?: boolean): Promise<void>;
loadPreviousChatMessages(messagesToLoad: number): Promise<boolean>;
lowerHand(): Promise<void>;
mute(): Promise<void>;
muteAllRemoteParticipants(): Promise<void>;
muteParticipant(userId: string): Promise<void>;
onReactionClick(reaction: Reaction_2): Promise<void>;
permitAudio: (userIds: string[]) => Promise<void>;
permitOthersAudio: () => Promise<void>;
permitOthersVideo: () => Promise<void>;
permitVideo: (userIds: string[]) => Promise<void>;
queryCameras(): Promise<VideoDeviceInfo[]>;
queryMicrophones(): Promise<AudioDeviceInfo[]>;
querySpeakers(): Promise<AudioDeviceInfo[]>;
raiseHand(): Promise<void>;
removeParticipant(userId: string): Promise<void>;
removeParticipant(participant: CommunicationIdentifier): Promise<void>;
// (undocumented)
removeResourceFromCache(resourceDetails: ResourceDetails): void;
resumeCall(): Promise<void>;
returnFromBreakoutRoom(): Promise<void>;
sendDtmfTone: (dtmfTone: DtmfTone_2) => Promise<void>;
sendMessage(content: string, options?: SendMessageOptions): Promise<void>;
sendReadReceipt(chatMessageId: string): Promise<void>;
sendTypingIndicator(): Promise<void>;
setCamera(sourceInfo: VideoDeviceInfo, options?: VideoStreamOptions): Promise<void>;
setCaptionLanguage(language: string): Promise<void>;
setMicrophone(sourceInfo: AudioDeviceInfo): Promise<void>;
setSpeaker(sourceInfo: AudioDeviceInfo): Promise<void>;
setSpokenLanguage(language: string): Promise<void>;
startCall(participants: string[], options?: StartCallOptions): Call | undefined;
startCall(participants: (MicrosoftTeamsAppIdentifier | PhoneNumberIdentifier | CommunicationUserIdentifier | MicrosoftTeamsUserIdentifier | UnknownIdentifier)[], options?: StartCallOptions): Call | undefined;
startCamera(options?: VideoStreamOptions): Promise<void>;
startCaptions(options?: StartCaptionsAdapterOptions): Promise<void>;
startNoiseSuppressionEffect(): Promise<void>;
startScreenShare(): Promise<void>;
startSpotlight(userIds?: string[]): Promise<void>;
startVideoBackgroundEffect(videoBackgroundEffect: VideoBackgroundEffect): Promise<void>;
stopAllSpotlight(): Promise<void>;
stopCamera(): Promise<void>;
stopCaptions(options?: StopCaptionsAdapterOptions): Promise<void>;
stopNoiseSuppressionEffect(): Promise<void>;
stopScreenShare(): Promise<void>;
stopSpotlight(userIds?: string[]): Promise<void>;
stopVideoBackgroundEffects(): Promise<void>;
submitSurvey(survey: CallSurvey): Promise<CallSurveyResponse | undefined>;
unmute(): Promise<void>;
updateBackgroundPickerImages(backgroundImages: VideoBackgroundImage[]): void;
updateMessage(messageId: string, content: string, options?: Record<string, string>): Promise<void>;
updateSelectedVideoBackgroundEffect(selectedVideoBackground: VideoBackgroundEffect): void;
}
// @public
export interface CallWithChatAdapterState extends CallWithChatAdapterUiState, CallWithChatClientState {
}
// @public
export interface CallWithChatAdapterSubscriptions {
// (undocumented)
off(event: 'callEnded', listener: CallEndedListener): void;
// (undocumented)
off(event: 'isMutedChanged', listener: IsMutedChangedListener): void;
// (undocumented)
off(event: 'callIdChanged', listener: CallIdChangedListener): void;
// (undocumented)
off(event: 'isLocalScreenSharingActiveChanged', listener: IsLocalScreenSharingActiveChangedListener): void;
// (undocumented)
off(event: 'displayNameChanged', listener: DisplayNameChangedListener): void;
// (undocumented)
off(event: 'isSpeakingChanged', listener: IsSpeakingChangedListener): void;
// (undocumented)
off(event: 'callParticipantsJoined', listener: ParticipantsJoinedListener): void;
// (undocumented)
off(event: 'callParticipantsLeft', listener: ParticipantsLeftListener): void;
// (undocumented)
off(event: 'selectedMicrophoneChanged', listener: PropertyChangedEvent): void;
// (undocumented)
off(event: 'selectedSpeakerChanged', listener: PropertyChangedEvent): void;
// (undocumented)
off(event: 'callError', listener: (e: AdapterError) => void): void;
// (undocumented)
off(event: 'captionsReceived', listener: CaptionsReceivedListener): void;
// (undocumented)
off(event: 'isCaptionsActiveChanged', listener: IsCaptionsActiveChangedListener): void;
// (undocumented)
off(event: 'isCaptionLanguageChanged', listener: IsCaptionLanguageChangedListener): void;
// (undocumented)
off(event: 'isSpokenLanguageChanged', listener: IsSpokenLanguageChangedListener): void;
// (undocumented)
off(event: 'capabilitiesChanged', listener: CapabilitiesChangedListener): void;
// (undocumented)
off(event: 'spotlightChanged', listener: SpotlightChangedListener): void;
// (undocumented)
off(event: 'breakoutRoomsUpdated', listener: BreakoutRoomsUpdatedListener): void;
// (undocumented)
off(event: 'messageReceived', listener: MessageReceivedListener): void;
// (undocumented)
off(event: 'messageEdited', listener: MessageEditedListener): void;
// (undocumented)
off(event: 'messageDeleted', listener: MessageDeletedListener): void;
// (undocumented)
off(event: 'messageSent', listener: MessageSentListener): void;
// (undocumented)
off(event: 'messageRead', listener: MessageReadListener): void;
// (undocumented)
off(event: 'chatParticipantsAdded', listener: ParticipantsAddedListener): void;
// (undocumented)
off(event: 'chatParticipantsRemoved', listener: ParticipantsRemovedListener): void;
// (undocumented)
off(event: 'chatError', listener: (e: AdapterError) => void): void;
// (undocumented)
off(event: 'chatInitialized', listener: ChatInitializedListener): void;
// (undocumented)
on(event: 'callEnded', listener: CallEndedListener): void;
// (undocumented)
on(event: 'isMutedChanged', listener: IsMutedChangedListener): void;
// (undocumented)
on(event: 'callIdChanged', listener: CallIdChangedListener): void;
// (undocumented)
on(event: 'isLocalScreenSharingActiveChanged', listener: IsLocalScreenSharingActiveChangedListener): void;
// (undocumented)
on(event: 'displayNameChanged', listener: DisplayNameChangedListener): void;
// (undocumented)
on(event: 'isSpeakingChanged', listener: IsSpeakingChangedListener): void;
// (undocumented)
on(event: 'callParticipantsJoined', listener: ParticipantsJoinedListener): void;
// (undocumented)
on(event: 'callParticipantsLeft', listener: ParticipantsLeftListener): void;
// (undocumented)
on(event: 'selectedMicrophoneChanged', listener: PropertyChangedEvent): void;
// (undocumented)
on(event: 'selectedSpeakerChanged', listener: PropertyChangedEvent): void;
// (undocumented)
on(event: 'callError', listener: (e: AdapterError) => void): void;
// (undocumented)
on(event: 'captionsReceived', listener: CaptionsReceivedListener): void;
// (undocumented)
on(event: 'isCaptionsActiveChanged', listener: IsCaptionsActiveChangedListener): void;
// (undocumented)
on(event: 'isCaptionLanguageChanged', listener: IsCaptionLanguageChangedListener): void;
// (undocumented)
on(event: 'isSpokenLanguageChanged', listener: IsSpokenLanguageChangedListener): void;
// (undocumented)
on(event: 'capabilitiesChanged', listener: CapabilitiesChangedListener): void;
// (undocumented)
on(event: 'spotlightChanged', listener: SpotlightChangedListener): void;
// (undocumented)
on(event: 'breakoutRoomsUpdated', listener: BreakoutRoomsUpdatedListener): void;
// (undocumented)
on(event: 'messageReceived', listener: MessageReceivedListener): void;
// (undocumented)
on(event: 'messageEdited', listener: MessageEditedListener): void;
// (undocumented)
on(event: 'messageDeleted', listener: MessageDeletedListener): void;
// (undocumented)
on(event: 'messageSent', listener: MessageSentListener): void;
// (undocumented)
on(event: 'messageRead', listener: MessageReadListener): void;
// (undocumented)
on(event: 'chatParticipantsAdded', listener: ParticipantsAddedListener): void;
// (undocumented)
on(event: 'chatParticipantsRemoved', listener: ParticipantsRemovedListener): void;
// (undocumented)
on(event: 'chatError', listener: (e: AdapterError) => void): void;
// (undocumented)
on(event: 'chatInitialized', listener: ChatInitializedListener): void;
}
// @public
export interface CallWithChatAdapterUiState {
isLocalPreviewMicrophoneEnabled: boolean;
page: CallCompositePage;
}
// @public
export interface CallWithChatClientState {
alternateCallerId?: string;
call?: CallState;
chat?: ChatThreadClientState;
deepNoiseSuppressionOnByDefault?: boolean;
devices: DeviceManagerState;
displayName: string | undefined;
environmentInfo?: EnvironmentInfo;
hideAttendeeNames?: boolean;
hideDeepNoiseSuppressionButton?: boolean;
isTeamsCall: boolean;
isTeamsMeeting: boolean;
latestCallErrors: AdapterErrors;
latestCallNotifications: AdapterNotifications;
latestChatErrors: AdapterErrors;
onResolveDeepNoiseSuppressionDependency?: () => Promise<DeepNoiseSuppressionEffectDependency>;
onResolveVideoEffectDependency?: () => Promise<VideoBackgroundEffectsDependency>;
reactions?: ReactionResources;
selectedVideoBackgroundEffect?: VideoBackgroundEffect;
userId: CommunicationIdentifierKind;
videoBackgroundImages?: VideoBackgroundImage[];
}
// @public
export const CallWithChatComposite: (props: CallWithChatCompositeProps) => JSX.Element;
// @public
export type CallWithChatCompositeIcons = {
ChevronLeft?: JSX.Element;
ControlBarChatButtonActive?: JSX.Element;
ControlBarChatButtonInactive?: JSX.Element;
ControlBarPeopleButton?: JSX.Element;
Link?: JSX.Element;
MoreDrawerMicrophones?: JSX.Element;
MoreDrawerPeople?: JSX.Element;
MoreDrawerSelectedMicrophone?: JSX.Element;
MoreDrawerSelectedSpeaker?: JSX.Element;
MoreDrawerSpeakers?: JSX.Element;
ControlButtonCameraOff?: JSX.Element;
ControlButtonCameraOn?: JSX.Element;
ControlButtonEndCall?: JSX.Element;
ControlButtonMicOff?: JSX.Element;
ControlButtonMicOn?: JSX.Element;
ControlButtonOptions?: JSX.Element;
ControlButtonScreenShareStart?: JSX.Element;
ControlButtonScreenShareStop?: JSX.Element;
ControlButtonCameraProhibited?: JSX.Element;
ControlButtonCameraProhibitedSmall?: JSX.Element;
ControlButtonMicProhibited?: JSX.Element;
ControlButtonMicProhibitedSmall?: JSX.Element;
ErrorBarCallCameraAccessDenied?: JSX.Element;
ErrorBarCallCameraAlreadyInUse?: JSX.Element;
ErrorBarCallLocalVideoFreeze?: JSX.Element;
ErrorBarCallMacOsCameraAccessDenied?: JSX.Element;
ErrorBarCallMacOsMicrophoneAccessDenied?: JSX.Element;
ErrorBarCallMicrophoneAccessDenied?: JSX.Element;
ErrorBarCallMicrophoneMutedBySystem?: JSX.Element;
ErrorBarCallMicrophoneUnmutedBySystem?: JSX.Element;
ErrorBarCallNetworkQualityLow?: JSX.Element;
ErrorBarCallNoMicrophoneFound?: JSX.Element;
ErrorBarCallNoSpeakerFound?: JSX.Element;
ErrorBarClear?: JSX.Element;
HorizontalGalleryLeftButton?: JSX.Element;
HorizontalGalleryRightButton?: JSX.Element;
LobbyScreenConnectingToCall?: JSX.Element;
LobbyScreenWaitingToBeAdmitted?: JSX.Element;
LocalDeviceSettingsCamera?: JSX.Element;
LocalDeviceSettingsMic?: JSX.Element;
LocalDeviceSettingsSpeaker?: JSX.Element;
LocalPreviewPlaceholder?: JSX.Element;
Muted?: JSX.Element;
NetworkReconnectIcon?: JSX.Element;
NoticePageAccessDeniedTeamsMeeting?: JSX.Element;
NoticePageJoinCallFailedDueToNoNetwork?: JSX.Element;
NoticePageLeftCall?: JSX.Element;
NoticePageRemovedFromCall?: JSX.Element;
OptionsCamera?: JSX.Element;
OptionsMic?: JSX.Element;
OptionsSpeaker?: JSX.Element;
ParticipantItemMicOff?: JSX.Element;
ParticipantItemScreenShareStart?: JSX.Element;
VideoTileMicOff?: JSX.Element;
LocalCameraSwitch?: JSX.Element;
PeoplePaneAddPerson?: JSX.Element;
PeoplePaneOpenDialpad?: JSX.Element;
DialpadStartCall?: JSX.Element;
DefaultCustomButton?: JSX.Element;
DtmfDialpadButton?: JSX.Element;
EditBoxCancel?: JSX.Element;
EditBoxSubmit?: JSX.Element;
MessageDelivered?: JSX.Element;
MessageEdit?: JSX.Element;
MessageFailed?: JSX.Element;
MessageRemove?: JSX.Element;
MessageSeen?: JSX.Element;
MessageSending?: JSX.Element;
SendBoxSend?: JSX.Element;
SendBoxSendHovered?: JSX.Element;
SendBoxAttachFile?: JSX.Element;
ParticipantItemOptions?: JSX.Element;
ParticipantItemOptionsHovered?: JSX.Element;
PeoplePaneMoreButton?: JSX.Element;
StopAllSpotlightMenuButton?: JSX.Element;
};
// @public
export type CallWithChatCompositeLoaderProps = {
userId: CommunicationUserIdentifier;
credential: CommunicationTokenCredential;
displayName: string;
endpoint: string;
locator: CallAndChatLocator;
callAdapterOptions?: AzureCommunicationCallAdapterOptions;
callWithChatCompositeOptions?: CallWithChatCompositeOptions;
};
// @public
export type CallWithChatCompositeOptions = {
callControls?: boolean | CallWithChatControlOptions;
remoteVideoTileMenuOptions?: RemoteVideoTileMenuOptions;
localVideoTile?: boolean | LocalVideoTileOptions;
galleryOptions?: {
layout?: VideoGalleryLayout;
};
surveyOptions?: {
disableSurvey?: boolean;
onSurveyClosed?: (surveyState: 'sent' | 'skipped' | 'error', surveyError?: string) => void;
onSurveySubmitted?: (callId: string, surveyId: string,
submittedSurvey: CallSurvey,
improvementSuggestions: CallSurveyImprovementSuggestions) => Promise<void>;
};
branding?: {
logo?: {
url: string;
alt?: string;
shape?: 'unset' | 'circle';
};
backgroundImage?: {
url: string;
};
};
spotlight?: {
hideSpotlightButtons?: boolean;
};
};
// @public
export interface CallWithChatCompositeProps extends BaseCompositeProps<CallWithChatCompositeIcons> {
// (undocumented)
adapter: CallWithChatAdapter;
fluentTheme?: PartialTheme | Theme;
formFactor?: 'desktop' | 'mobile';
joinInvitationURL?: string;
options?: CallWithChatCompositeOptions;
}
// @public
export interface CallWithChatCompositeStrings {
breakoutRoomChatPaneTitle: string;
chatButtonLabel: string;
chatButtonNewMessageNotificationLabel: string;
chatButtonTooltipClose: string;
chatButtonTooltipClosedWithMessageCount: string;
chatButtonTooltipOpen: string;
chatContentSpinnerLabel: string;
chatPaneTitle: string;
copyInviteLinkActionedAriaLabel: string;
copyInviteLinkButtonActionedLabel: string;
copyInviteLinkButtonLabel: string;
dialpadCloseModalButtonAriaLabel: string;
dialpadModalAriaLabel: string;
dialpadModalTitle: string;
dialpadStartCallButtonLabel: string;
dismissSidePaneButtonLabel?: string;
dtmfDialpadPlaceholderText: string;
moreDrawerAudioDeviceMenuTitle?: string;
moreDrawerButtonLabel: string;
moreDrawerButtonTooltip: string;
moreDrawerCaptionLanguageMenuTitle: string;
moreDrawerCaptionsMenuTitle: string;
moreDrawerGalleryOptionsMenuTitle: string;
moreDrawerMicrophoneMenuTitle: string;
moreDrawerSpeakerMenuTitle: string;
moreDrawerSpokenLanguageMenuTitle: string;
openDialpadButtonLabel: string;
openDtmfDialpadLabel: string;
peopleButtonLabel: string;
peopleButtonTooltipClose: string;
peopleButtonTooltipCloseAriaLabel: string;
peopleButtonTooltipOpen: string;
peopleButtonTooltipOpenAriaLabel: string;
peoplePaneAddPeopleButtonLabel: string;
peoplePaneSubTitle: string;
peoplePaneTitle: string;
pictureInPictureTileAriaLabel: string;
removeMenuLabel: string;
returnToCallButtonAriaDescription?: string;
returnToCallButtonAriaLabel?: string;
selectedPeopleButtonLabel: string;
}
// @public
export interface CallWithChatControlOptions extends CommonCallControlOptions {
chatButton?: boolean | {
disabled: boolean;
};
}
// @public
export type CallWithChatEvent = 'callError' | 'chatError' | 'callEnded' | 'isMutedChanged' | 'callIdChanged' | 'isLocalScreenSharingActiveChanged' | 'displayNameChanged' | 'isSpeakingChanged' | 'callParticipantsJoined' | 'callParticipantsLeft' | 'selectedMicrophoneChanged' | 'selectedSpeakerChanged' | 'isCaptionsActiveChanged' | 'captionsReceived' | 'isCaptionLanguageChanged' | 'isSpokenLanguageChanged' | 'capabilitiesChanged' | 'spotlightChanged' | 'breakoutRoomsUpdated' | 'messageReceived' | 'messageEdited' | 'messageDeleted' | 'messageSent' | 'messageRead' | 'chatParticipantsAdded' | 'chatParticipantsRemoved' | 'chatInitialized';
// @public
export const CameraButton: (props: CameraButtonProps) => JSX.Element;
// @public
export interface CameraButtonContextualMenuStyles extends IContextualMenuStyles {
menuItemStyles?: IContextualMenuItemStyles;
}
// @public
export interface CameraButtonProps extends ControlBarButtonProps {
cameras?: OptionsDevice[];
enableDeviceSelectionMenu?: boolean;
localVideoViewOptions?: VideoStreamOptions;
onClickVideoEffects?: (showVideoEffects: boolean) => void;
onSelectCamera?: (device: OptionsDevice) => Promise<void>;
onToggleCamera?: (options?: VideoStreamOptions) => Promise<void>;
selectedCamera?: OptionsDevice;
strings?: Partial<CameraButtonStrings>;
styles?: Partial<CameraButtonStyles>;
}
// @public
export type CameraButtonSelector = (state: CallClientState, props: CallingBaseSelectorProps) => {
disabled: boolean;
checked: boolean;
cameras: VideoDeviceInfo[];
selectedCamera?: VideoDeviceInfo;
};
// @public
export interface CameraButtonStrings {
cameraActionTurnedOffAnnouncement?: string;
cameraActionTurnedOnAnnouncement?: string;
cameraButtonAriaDescription?: string;
cameraButtonSplitRoleDescription?: string;
cameraMenuTitle: string;
cameraMenuTooltip: string;
cameraPrimaryActionSplitButtonTitle?: string;
offLabel: string;
offSplitButtonAriaLabel?: string;
offSplitButtonPrimaryActionCamera?: string;
onLabel: string;
onSplitButtonAriaLabel?: string;
onSplitButtonPrimaryActionCamera?: string;
tooltipDisabledContent?: string;
tooltipOffContent?: string;
tooltipOnContent?: string;
tooltipVideoLoadingContent?: string;
videoEffectsMenuItemTitle?: string;
}
// @public
export interface CameraButtonStyles extends ControlBarButtonStyles {
menuStyles?: Partial<CameraButtonContextualMenuStyles>;
}
// @public
export type CancelEditCallback = (messageId: string) => void;
// @public
export type CapabilitiesChangedListener = (data: CapabilitiesChangeInfo) => void;
// @public
export interface CapabilitiesFeatureState {
capabilities: ParticipantCapabilities;
latestCapabilitiesChangeInfo: CapabilitiesChangeInfo;
}
// @public
export interface CapabilityChangedNotificationStrings {
hideAttendeeNames?: {
hideAttendeeNameAttendee?: string;
hideAttendeeNamePresenter?: string;
};
shareScreen?: {
lostDueToRoleChangeToAttendee?: string;
grantedDueToRoleChangeToPresenter?: string;
};
turnVideoOn?: {
lostDueToMeetingOption?: string;
grantedDueToMeetingOption?: string;
};
unmuteMic?: {
lostDueToMeetingOption?: string;
grantedDueToMeetingOption?: string;
};
}
// @public
export interface CaptionLanguageStrings {
// (undocumented)
'fr-ca': string;
// (undocumented)
'pt-pt': string;
// (undocumented)
'zh-Hans': string;
// (undocumented)
'zh-Hant': string;
// (undocumented)
ar: string;
// (undocumented)
cs: string;
// (undocumented)
cy: string;
// (undocumented)
da: string;
// (undocumented)
de: string;
// (undocumented)
el: string;
// (undocumented)
en: string;
// (undocumented)
es: string;
// (undocumented)
fi: string;
// (undocumented)
fr: string;
// (undocumented)
he: string;
// (undocumented)
hi: string;
// (undocumented)
hu: string;
// (undocumented)
it: string;
// (undocumented)
ja: string;
// (undocumented)
ko: string;
// (undocumented)
nb: string;
// (undocumented)
nl: string;
// (undocumented)
pl: string;
// (undocumented)
pt: string;
// (undocumented)
ro: string;
// (undocumented)
ru: string;
// (undocumented)
sk: string;
// (undocumented)
sv: string;
// (undocumented)
th: string;
// (undocumented)
tr: string;
// (undocumented)
uk: string;
// (undocumented)
vi: string;
}
// @public
export const CaptionsBanner: (props: CaptionsBannerProps) => JSX.Element;
// @public
export interface CaptionsBannerProps {
captions: CaptionsInformation[];
captionsOptions?: {
height: 'full' | 'default';
};
formFactor?: 'default' | 'compact';
isCaptionsOn?: boolean;
onRenderAvatar?: OnRenderAvatarCallback;
startCaptionsInProgress?: boolean;
strings?: CaptionsBannerStrings;
}
// @public
export type CaptionsBannerSelector = (state: CallClientState, props: CallingBaseSelectorProps) => {
captions: CaptionsInformation[];
isCaptionsOn: boolean;
startCaptionsInProgress: boolean;
};
// @public
export interface CaptionsBannerStrings {
captionsBannerSpinnerText?: string;
}
// @public (undocumented)
export interface CaptionsCallFeatureState {
captions: CaptionsInfo[];
captionsKind: CaptionsKind;
currentCaptionLanguage: string;
currentSpokenLanguage: string;
isCaptionsFeatureActive: boolean;
startCaptionsInProgress: boolean;
supportedCaptionLanguages: string[];
supportedSpokenLanguages: string[];
}
// @public
export type CaptionSettingsSelector = (state: CallClientState, props: CallingBaseSelectorProps) => {
supportedCaptionLanguages: SupportedCaptionLanguage[];
currentCaptionLanguage: SupportedCaptionLanguage;
supportedSpokenLanguages: SupportedSpokenLanguage[];
currentSpokenLanguage: SupportedSpokenLanguage;
isCaptionsFeatureActive: boolean;
};
// @public (undocumented)
export interface CaptionsInfo {
captionLanguage?: string;
captionText: string;
lastUpdatedTimestamp?: Date;
resultType: CaptionsResultType;
speaker: CallerInfo;
spokenLanguage: string;
spokenText?: string;
timestamp: Date;
}
// @public
export type CaptionsInformation = {
id: string;
displayName: string;
captionText: string;
userId?: string;
};
// @public
export type CaptionsOptions = {
spokenLanguage: string;
};
// @public
export type CaptionsReceivedListener = (event: {
captionsInfo: CaptionsInfo;
}) => void;
// @public
export const CaptionsSettingsModal: (props: CaptionsSettingsModalProps) => JSX.Element;
// @public
export interface CaptionsSettingsModalProps {
captionLanguageStrings?: CaptionLanguageStrings;
changeCaptionLanguage?: boolean;
currentCaptionLanguage?: SupportedCaptionLanguage;
currentSpokenLanguage: SupportedSpokenLanguage;
isCaptionsFeatureActive?: boolean;
onDismissCaptionsSettings?: () => void;
onSetCaptionLanguage?: (language: SupportedCaptionLanguage) => Promise<void>;
onSetSpokenLanguage: (language: SupportedSpokenLanguage) => Promise<void>;
onStartCaptions: (options?: CaptionsOptions) => Promise<void>;
showModal?: boolean;
spokenLanguageStrings?: SpokenLanguageStrings;
strings?: CaptionsSettingsModalStrings;
supportedCaptionLanguages?: SupportedCaptionLanguage[];
supportedSpokenLanguages: SupportedSpokenLanguage[];
}
// @public
export interface CaptionsSettingsModalStrings {
captionsSettingsCancelButtonLabel?: string;
captionsSettingsCaptionLanguageDropdownInfoText?: string;
captionsSettingsCaptionLanguageDropdownLabel?: string;
captionsSettingsCloseModalButtonAriaLabel?: string;
captionsSettingsConfirmButtonLabel?: string;
captionsSettingsModalAriaLabel?: string;
captionsSettingsModalTitle?: string;
captionsSettingsSpokenLanguageDropdownInfoText?: string;
captionsSettingsSpokenLanguageDropdownLabel?: string;
}
// @public
export type ChatAdapter = ChatAdapterThreadManagement & AdapterState<ChatAdapterState> & Disposable_2 & ChatAdapterSubscribers;
// @public
export type ChatAdapterState = ChatAdapterUiState & ChatCompositeClientState;
// @public
export interface ChatAdapterSubscribers {
off(event: 'messageReceived', listener: MessageReceivedListener): void;
off(event: 'messageEdited', listener: MessageEditedListener): void;
off(event: 'messageDeleted', listener: MessageDeletedListener): void;
off(event: 'messageSent', listener: MessageSentListener): void;
off(event: 'messageRead', listener: MessageReadListener): void;
off(event: 'participantsAdded', listener: ParticipantsAddedListener): void;
off(event: 'participantsRemoved', listener: ParticipantsRemovedListener): void;
off(event: 'topicChanged', listener: TopicChangedListener): void;
off(event: 'error', listener: (e: AdapterError) => void): void;
on(event: 'messageReceived', listener: MessageReceivedListener): void;
on(event: 'messageEdited', listener: MessageEditedListener): void;
on(event: 'messageDeleted', listener: MessageDeletedListener): void;
on(event: 'messageSent', listener: MessageSentListener): void;
on(event: 'messageRead', listener: MessageReadListener): void;
on(event: 'participantsAdded', listener: ParticipantsAddedListener): void;
on(event: 'participantsRemoved', listener: ParticipantsRemovedListener): void;
on(event: 'topicChanged', listener: TopicChangedListener): void;
on(event: 'error', listener: (e: AdapterError) => void): void;
}
// @public
export interface ChatAdapterThreadManagement {
deleteMessage(messageId: string): Promise<void>;
downloadResourceToCache(resourceDetails: ResourceDetails): Promise<void>;
fetchInitialData(): Promise<void>;
loadPreviousChatMessages(messagesToLoad: number): Promise<boolean>;
removeParticipant(userId: string): Promise<void>;
removeResourceFromCache(resourceDetails: ResourceDetails): void;
sendMessage(content: string, options?: SendMessageOptions): Promise<void>;
sendReadReceipt(chatMessageId: string): Promise<void>;
sendTypingIndicator(): Promise<void>;
setTopic(topicName: string): Promise<void>;
updateMessage(messageId: string, content: string, options?: Record<string, string>): Promise<void>;
}
// @public
export type ChatAdapterUiState = {
error?: Error;
};
// @public
export type ChatAttachmentType = 'unknown' | 'image' | 'file';
// @public
export type ChatBaseSelectorProps = {
threadId: string;
};
// @public
export const ChatClientProvider: (props: ChatClientProviderProps) => JSX.Element;
// @public
export type ChatClientProviderProps = {
children: React_2.ReactNode;
chatClient: StatefulChatClient;
};
// @public
export type ChatClientState = {
userId: CommunicationIdentifierKind;
displayName: string;
threads: {
[key: string]: ChatThreadClientState;
};
latestErrors: ChatErrors;
};
// @public
export const ChatComposite: (props: ChatCompositeProps) => JSX.Element;
// @public
export type ChatCompositeClientState = {
userId: CommunicationIdentifierKind;
displayName: string;
thread: ChatThreadClientState;
latestErrors: AdapterErrors;
};
// @public
export type ChatCompositeIcons = {
EditBoxCancel?: JSX.Element;
EditBoxSubmit?: JSX.Element;
MessageDelivered?: JSX.Element;
MessageEdit?: JSX.Element;
MessageFailed?: JSX.Element;
MessageRemove?: JSX.Element;
MessageSeen?: JSX.Element;
MessageSending?: JSX.Element;
ParticipantItemOptions?: JSX.Element;
ParticipantItemOptionsHovered?: JSX.Element;
SendBoxSend?: JSX.Element;
SendBoxSendHovered?: JSX.Element;
};
// @public
export type ChatCompositeLoaderProps = {
userId: CommunicationUserIdentifier;
credential: CommunicationTokenCredential;
displayName?: string;
endpoint: string;
threadId: string;
chatCompositeOptions?: ChatCompositeOptions;
};
// @public
export type ChatCompositeOptions = {
errorBar?: boolean;
topic?: boolean;
autoFocus?: 'sendBoxTextField';
};
// @public
export interface ChatCompositeProps extends BaseCompositeProps<ChatCompositeIcons> {
adapter: ChatAdapter;
onRenderMessage?: (messageProps: MessageProps, defaultOnRender?: MessageRenderer) => JSX.Element;
onRenderTypingIndicator?: (typingUsers: CommunicationParticipant[]) => JSX.Element;
options?: ChatCompositeOptions;
}
// @public
export interface ChatCompositeStrings {
chatListHeader: string;
}
// @public
export class ChatError extends Error {
constructor(target: ChatErrorTarget, innerError: Error, timestamp?: Date);
innerError: Error;
target: ChatErrorTarget;
timestamp: Date;
}
// @public
export type ChatErrorBarSelector = (state: ChatClientState, props: ChatBaseSelectorProps) => {
activeErrorMessages: ActiveErrorMessage[];
};
// @public
export type ChatErrors = {
[target in ChatErrorTarget]: ChatError;
};
// @public
export type ChatErrorTarget = 'ChatClient.createChatThread' | 'ChatClient.deleteChatThread' | 'ChatClient.getChatThreadClient' | 'ChatClient.listChatThreads' | 'ChatClient.off' | 'ChatClient.on' | 'ChatClient.startRealtimeNotifications' | 'ChatClient.stopRealtimeNotifications' | 'ChatThreadClient.addParticipants' | 'ChatThreadClient.deleteMessage' | 'ChatThreadClient.getMessage' | 'ChatThreadClient.getProperties' | 'ChatThreadClient.listMessages' | 'ChatThreadClient.listParticipants' | 'ChatThreadClient.listReadReceipts' | 'ChatThreadClient.removeParticipant' | 'ChatThreadClient.sendMessage' | 'ChatThreadClient.sendReadReceipt' | 'ChatThreadClient.sendTypingNotification' | 'ChatThreadClient.updateMessage' | 'ChatThreadClient.updateTopic';
// @public
export type ChatHandlers = {
onSendMessage: (content: string, options?: SendMessageOptions) => Promise<void>;
onMessageSeen: (chatMessageId: string) => Promise<void>;
onTyping: () => Promise<void>;
onRemoveParticipant: (userId: string) => Promise<void>;
updateThreadTopicName: (topicName: string) => Promise<void>;
onLoadPreviousChatMessages: (messagesToLoad: number) => Promise<boolean>;
onUpdateMessage: (messageId: string, content: string) => Promise<void>;
onDeleteMessage: (messageId: string) => Promise<void>;
};
// @public
export type ChatInitializedListener = (event: {
adapter: CallWithChatAdapter;
}) => void;
// @public
export interface ChatMessage extends MessageCommon {
// (undocumented)
attached?: MessageAttachedStatus;
attachments?: AttachmentMetadata[];
// (undocumented)
clientMessageId?: string;
// (undocumented)
content?: string;
// (undocumented)
contentType: MessageContentType;
// (undocumented)
deletedOn?: Date;
// (undocumented)
editedOn?: Date;
// (undocumented)
failureReason?: string;
// (undocumented)
messageType: 'chat';
metadata?: Record<string, string>;
// (undocumented)
mine?: boolean;
// (undocumented)
senderDisplayName?: string;
// (undocumented)
senderId?: string;
// (undocumented)
status?: MessageStatus;
}
// @public
export type ChatMessageWithStatus = ChatMessage_2 & {
clientMessageId?: string;
status: MessageStatus;
resourceCache?: Record<string, ResourceFetchResult>;
};
// @public
export type ChatParticipantListSelector = (state: ChatClientState, props: ChatBaseSelectorProps) => {
myUserId: string;
participants: ParticipantListParticipant[];
};
// @public
export type ChatReturnProps<Component extends (props: any) => JSX.Element> = GetChatSelector<Component> extends (state: ChatClientState, props: any) => any ? ReturnType<GetChatSelector<Component>> & Common<ChatHandlers, Parameters<Component>[0]> : never;
// @public
export const ChatThreadClientProvider: (props: ChatThreadClientProviderProps) => JSX.Element;
// @public
export type ChatThreadClientProviderProps = {
children: React_2.ReactNode;
chatThreadClient: ChatThreadClient;
};
// @public
export type ChatThreadClientState = {
chatMessages: {
[key: string]: ChatMessageWithStatus;
};
participants: {
[key: string]: ChatParticipant;
};
threadId: string;
properties?: ChatThreadProperties;
readReceipts: ChatMessageReadReceipt[];
typingIndicators: TypingIndicatorReceivedEvent[];
latestReadTime: Date;
};
// @public
export type ChatThreadProperties = {
topic?: string;
};
// @public
export type ClientState = CallClientState & ChatClientState;
// @public
export type Common<A, B> = Pick<A, CommonProperties<A, B>>;
// @public
export interface CommonCallAdapter extends AdapterState<CallAdapterState>, Disposable_2, CallAdapterCallOperations, CallAdapterDeviceManagement, CallAdapterSubscribers {
// @deprecated
joinCall(microphoneOn?: boolean): void;
joinCall(options?: JoinCallOptions): void;
startCall(participants: string[], options?: StartCallOptions): void;
startCall(participants: StartCallIdentifier[], options?: StartCallOptions): void;
}
// @public
export type CommonCallAdapterOptions = {
videoBackgroundOptions?: {
videoBackgroundImages?: VideoBackgroundImage[];
onResolveDependency?: () => Promise<VideoBackgroundEffectsDependency>;
};
deepNoiseSuppressionOptions?: {
onResolveDependency?: () => Promise<DeepNoiseSuppressionEffectDependency>;
deepNoiseSuppressionOnByDefault?: boolean;
hideDeepNoiseSuppressionButton?: boolean;
};
onFetchProfile?: OnFetchProfileCallback;
callingSounds?: CallingSounds;
reactionResources?: ReactionResources;
alternateCallerId?: string;
};
// @public
export type CommonCallControlOptions = {
displayType?: CallControlDisplayType;
cameraButton?: boolean | {
disabled: boolean;
};
endCallButton?: boolean | {
hangUpForEveryone?: false | 'endCallOptions';
disableEndCallModal?: boolean;
};
microphoneButton?: boolean | {
disabled: boolean;
};
devicesButton?: boolean | {
disabled: boolean;
};
participantsButton?: boolean | {
disabled: boolean;
};
screenShareButton?: boolean | {
disabled: boolean;
};
moreButton?: boolean;
raiseHandButton?: boolean | {
disabled: boolean;
};
reactionButton?: boolean | {
disabled: boolean;
};
onFetchCustomButtonProps?: CustomCallControlButtonCallback[];
holdButton?: boolean | {
disabled: boolean;
};
peopleButton?: boolean | {
disabled: boolean;
};
dtmfDialerButton?: boolean | {
disabled: boolean;
};
exitSpotlightButton?: boolean;
captionsButton?: boolean;
galleryControlsButton?: boolean;
teamsMeetingPhoneCallButton?: boolean;
};
// @public
export interface CommonCallingHandlers {
// (undocumented)
onAcceptCall: (incomingCallId: string, useVideo?: boolean) => Promise<void>;
// (undocumented)
onAddParticipant(participant: CommunicationUserIdentifier): Promise<void>;
// (undocumented)
onAddParticipant(participant: PhoneNumberIdentifier, options: AddPhoneNumberOptions): Promise<void>;
// (undocumented)
onBlurVideoBackground: (backgroundBlurConfig?: BackgroundBlurConfig) => Promise<void>;
// (undocumented)
onCreateLocalStreamView: (options?: VideoStreamOptions) => Promise<void | CreateVideoStreamViewResult>;
// (undocumented)
onCreateRemoteStreamView: (userId: string, options?: VideoStreamOptions) => Promise<void | CreateVideoStreamViewResult>;
// (undocumented)
onDisposeLocalScreenShareStreamView: () => Promise<void>;
// (undocumented)
onDisposeLocalStreamView: () => Promise<void>;
// (undocumented)
onDisposeRemoteScreenShareStreamView: (userId: string) => Promise<void>;
// @deprecated (undocumented)
onDisposeRemoteStreamView: (userId: string) => Promise<void>;
// (undocumented)
onDisposeRemoteVideoStreamView: (userId: string) => Promise<void>;
onForbidAudio?: (userIds: string[]) => Promise<void>;
onForbidOthersAudio?: () => Promise<void>;
onForbidOthersVideo?: () => Promise<void>;
onForbidVideo?: (userIds: string[]) => Promise<void>;
// (undocumented)
onHangUp: (forEveryone?: boolean) => Promise<void>;
// (undocumented)
onLowerHand: () => Promise<void>;
// (undocumented)
onMuteAllRemoteParticipants: () => Promise<void>;
// (undocumented)
onMuteParticipant: (userId: string) => Promise<void>;
onPermitAudio?: (userIds: string[]) => Promise<void>;
onPermitOthersAudio?: () => Promise<void>;
onPermitOthersVideo?: () => Promise<void>;
onPermitVideo?: (userIds: string[]) => Promise<void>;
// (undocumented)
onRaiseHand: () => Promise<void>;
// (undocumented)
onReactionClick: (reaction: Reaction_2) => Promise<void>;
// (undocumented)
onRejectCall: (incomingCallId: string) => Promise<void>;
// (undocumented)
onRemoveParticipant(userId: string): Promise<void>;
// (undocumented)
onRemoveParticipant(participant: CommunicationIdentifier): Promise<void>;
// (undocumented)
onRemoveVideoBackgroundEffects: () => Promise<void>;
// (undocumented)
onReplaceVideoBackground: (backgroundReplacementConfig: BackgroundReplacementConfig) => Promise<void>;
// (undocumented)
onSelectCamera: (device: VideoDeviceInfo, options?: VideoStreamOptions) => Promise<void>;
// (undocumented)
onSelectMicrophone: (device: AudioDeviceInfo) => Promise<void>;
// (undocumented)
onSelectSpeaker: (device: AudioDeviceInfo) => Promise<void>;
// (undocumented)
onSendDtmfTone: (dtmfTone: DtmfTone_2) => Promise<void>;
// (undocumented)
onSetCaptionLanguage: (language: string) => Promise<void>;
// (undocumented)
onSetSpokenLanguage: (language: string) => Promise<void>;
// (undocumented)
onStartCall: (participants: CommunicationIdentifier[], options?: StartCallOptions) => void;
// (undocumented)
onStartCaptions: (options?: CaptionsOptions) => Promise<void>;
// (undocumented)
onStartLocalVideo: () => Promise<void>;
// (undocumented)
onStartNoiseSuppressionEffect: () => Promise<void>;
// (undocumented)
onStartScreenShare: () => Promise<void>;
// (undocumented)
onStartSpotlight: (userIds?: string[]) => Promise<void>;
// (undocumented)
onStopAllSpotlight: () => Promise<void>;
// (undocumented)
onStopCaptions: () => Promise<void>;
// (undocumented)
onStopNoiseSuppressionEffect: () => Promise<void>;
// (undocumented)
onStopScreenShare: () => Promise<void>;
// (undocumented)
onStopSpotlight: (userIds?: string[]) => Promise<void>;
// (undocumented)
onSubmitSurvey(survey: CallSurvey): Promise<CallSurveyResponse | undefined>;
// (undocumented)
onToggleCamera: (options?: VideoStreamOptions) => Promise<void>;
// (undocumented)
onToggleHold: () => Promise<void>;
// (undocumented)
onToggleMicrophone: () => Promise<void>;
// (undocumented)
onToggleRaiseHand: () => Promise<void>;
// (undocumented)
onToggleScreenShare: () => Promise<void>;
}
// @public
export type CommonProperties<A, B> = {
[P in keyof A & keyof B]: A[P] extends B[P] ? P : never;
}[keyof A & keyof B];
// @public
export type CommunicationParticipant = {
userId: string;
displayName?: string;
};
// @public
export const COMPONENT_LOCALE_AR_SA: ComponentLocale;
// @public
export const COMPONENT_LOCALE_CS_CZ: ComponentLocale;
// @public
export const COMPONENT_LOCALE_CY_GB: ComponentLocale;
// @public
export const COMPONENT_LOCALE_DE_DE: ComponentLocale;
// @public
export const COMPONENT_LOCALE_EN_GB: ComponentLocale;
// @public
export const COMPONENT_LOCALE_EN_US: ComponentLocale;
// @public
export const COMPONENT_LOCALE_ES_ES: ComponentLocale;
// @public
export const COMPONENT_LOCALE_ES_MX: ComponentLocale;
// @public
export const COMPONENT_LOCALE_FI_FI: ComponentLocale;
// @public
export const COMPONENT_LOCALE_FR_CA: ComponentLocale;
// @public
export const COMPONENT_LOCALE_FR_FR: ComponentLocale;
// @public
export const COMPONENT_LOCALE_HE_IL: ComponentLocale;
// @public
export const COMPONENT_LOCALE_IT_IT: ComponentLocale;
// @public
export const COMPONENT_LOCALE_JA_JP: ComponentLocale;
// @public
export const COMPONENT_LOCALE_KO_KR: ComponentLocale;
// @public
export const COMPONENT_LOCALE_NB_NO: ComponentLocale;
// @public
export const COMPONENT_LOCALE_NL_NL: ComponentLocale;
// @public
export const COMPONENT_LOCALE_PL_PL: ComponentLocale;
// @public
export const COMPONENT_LOCALE_PT_BR: ComponentLocale;
// @public
export const COMPONENT_LOCALE_RU_RU: ComponentLocale;
// @public
export const COMPONENT_LOCALE_SV_SE: ComponentLocale;
// @public
export const COMPONENT_LOCALE_TR_TR: ComponentLocale;
// @public
export const COMPONENT_LOCALE_ZH_CN: ComponentLocale;
// @public
export const COMPONENT_LOCALE_ZH_TW: ComponentLocale;
// @public
export type ComponentIcons = Record<keyof typeof DEFAULT_COMPONENT_ICONS, JSX.Element>;
// @public
export interface ComponentLocale {
strings: ComponentStrings;
}
// @public
export type ComponentProps<Component extends (props: any) => JSX.Element> = ChatReturnProps<Component> extends never ? CallingReturnProps<Component> extends never ? undefined : CallingReturnProps<Component> : ChatReturnProps<Component>;
// @public
export type ComponentSlotStyle = Omit<IRawStyle, 'animation'>;
// @public
export interface ComponentStrings {
cameraButton: CameraButtonStrings;
captionLanguages: CaptionLanguageStrings;
captionsBanner: CaptionsBannerStrings;
captionsSettingsModal: CaptionsSettingsModalStrings;
devicesButton: DevicesButtonStrings;
dialpad: DialpadStrings;
endCallButton: EndCallButtonStrings;
errorBar: ErrorBarStrings;
holdButton: HoldButtonStrings;
imageOverlay: ImageOverlayStrings;
// (undocumented)
IncomingCallNotification: IncomingCallNotificationStrings;
meetingConferencePhoneInfo: MeetingConferencePhoneInfoModalStrings;
messageStatusIndicator: MessageStatusIndicatorStrings;
messageThread: MessageThreadStrings;
microphoneButton: MicrophoneButtonStrings;
notificationStack: NotificationStackStrings;
participantItem: ParticipantItemStrings;
participantsButton: ParticipantsButtonStrings;
raiseHandButton: RaiseHandButtonStrings;
reactionButton: ReactionButtonStrings;
screenShareButton: ScreenShareButtonStrings;
sendBox: SendBoxStrings;
spokenLanguages: SpokenLanguageStrings;
startCaptionsButton: StartCaptionsButtonStrings;
typingIndicator: TypingIndicatorStrings;
verticalGallery: VerticalGalleryStrings;
videoGallery: VideoGalleryStrings;
videoTile: VideoTileStrings;
}
// @public
export const COMPOSITE_LOCALE_AR_SA: CompositeLocale;
// @public
export const COMPOSITE_LOCALE_CS_CZ: CompositeLocale;
// @public
export const COMPOSITE_LOCALE_CY_GB: CompositeLocale;
// @public
export const COMPOSITE_LOCALE_DE_DE: CompositeLocale;
// @public
export const COMPOSITE_LOCALE_EN_GB: CompositeLocale;
// @public
export const COMPOSITE_LOCALE_EN_US: CompositeLocale;
// @public
export const COMPOSITE_LOCALE_ES_ES: CompositeLocale;
// @public
export const COMPOSITE_LOCALE_ES_MX: CompositeLocale;
// @public
export const COMPOSITE_LOCALE_FI_FI: CompositeLocale;
// @public
export const COMPOSITE_LOCALE_FR_CA: CompositeLocale;
// @public
export const COMPOSITE_LOCALE_FR_FR: CompositeLocale;
// @public
export const COMPOSITE_LOCALE_HE_IL: CompositeLocale;
// @public
export const COMPOSITE_LOCALE_IT_IT: CompositeLocale;
// @public
export const COMPOSITE_LOCALE_JA_JP: CompositeLocale;
// @public
export const COMPOSITE_LOCALE_KO_KR: CompositeLocale;
// @public
export const COMPOSITE_LOCALE_NB_NO: CompositeLocale;
// @public
export const COMPOSITE_LOCALE_NL_NL: CompositeLocale;
// @public
export const COMPOSITE_LOCALE_PL_PL: CompositeLocale;
// @public
export const COMPOSITE_LOCALE_PT_BR: CompositeLocale;
// @public
export const COMPOSITE_LOCALE_RU_RU: CompositeLocale;
// @public
export const COMPOSITE_LOCALE_SV_SE: CompositeLocale;
// @public
export const COMPOSITE_LOCALE_TR_TR: CompositeLocale;
// @public
export const COMPOSITE_LOCALE_ZH_CN: CompositeLocale;
// @public
export const COMPOSITE_LOCALE_ZH_TW: CompositeLocale;
// @public
export const COMPOSITE_ONLY_ICONS: CompositeIcons;
// @public
export type CompositeIcons = ChatCompositeIcons & CallCompositeIcons & CallWithChatCompositeIcons;
// @public
export interface CompositeLocale {
component: ComponentLocale;
strings: CompositeStrings;
}
// @public
export interface CompositeStrings {
call: CallCompositeStrings;
callWithChat: CallWithChatCompositeStrings;
chat: ChatCompositeStrings;
}
// @public
export interface ConferencePhoneInfo {
city?: string;
conferenceId: string;
country?: string;
isTollFree: boolean;
phoneNumber: string;
}
// @public
export interface ContentSystemMessage extends SystemMessageCommon {
// (undocumented)
content: string;
// (undocumented)
systemMessageType: 'content';
}
// @public
export const ControlBar: (props: ControlBarProps) => JSX.Element;
// @public
export const ControlBarButton: (props: ControlBarButtonProps) => JSX.Element;
// @public
export interface ControlBarButtonProps extends IButtonProps {
disableTooltip?: boolean;
labelKey?: string;
onRenderOffIcon?: IRenderFunction<IButtonProps>;
onRenderOnIcon?: IRenderFunction<IButtonProps>;
showLabel?: boolean;
strings?: ControlBarButtonStrings;
styles?: ControlBarButtonStyles;
tooltipId?: string;
}
// @public
export interface ControlBarButtonStrings {
label?: string;
offLabel?: string;
onLabel?: string;
tooltipContent?: string;
tooltipDisabledContent?: string;
tooltipOffContent?: string;
tooltipOnContent?: string;
}
// @public
export type ControlBarButtonStyles = IButtonStyles;
// @public
export type ControlBarLayout = 'horizontal' | 'vertical' | 'dockedTop' | 'dockedBottom' | 'dockedLeft' | 'dockedRight' | 'floatingTop' | 'floatingBottom' | 'floatingLeft' | 'floatingRight';
// @public
export interface ControlBarProps {
children?: React_2.ReactNode;
layout?: ControlBarLayout;
styles?: BaseCustomStyles;
}
// @public
export function createAzureCommunicationCallAdapter(args: AzureCommunicationCallAdapterArgs): Promise<CallAdapter>;
// @public
export function createAzureCommunicationCallAdapter(args: AzureCommunicationOutboundCallAdapterArgs): Promise<CallAdapter>;
// @public
export function createAzureCommunicationCallAdapterFromClient(callClient: StatefulCallClient, callAgent: CallAgent, targetCallees: StartCallIdentifier[], options?: AzureCommunicationCallAdapterOptions): Promise<CallAdapter>;
// @public
export function createAzureCommunicationCallAdapterFromClient(callClient: StatefulCallClient, callAgent: CallAgent, locator: CallAdapterLocator, options?: AzureCommunicationCallAdapterOptions): Promise<CallAdapter>;
// @public
export const createAzureCommunicationCallWithChatAdapter: ({ userId, displayName, credential, endpoint, locator, alternateCallerId, callAdapterOptions }: AzureCommunicationCallWithChatAdapterArgs) => Promise<CallWithChatAdapter>;
// @public
export const createAzureCommunicationCallWithChatAdapterFromClients: ({ callClient, callAgent, callLocator, chatClient, chatThreadClient, callAdapterOptions }: AzureCommunicationCallWithChatAdapterFromClientArgs) => Promise<CallWithChatAdapter>;
// @public
export const createAzureCommunicationChatAdapter: ({ endpoint: endpointUrl, userId, displayName, credential, threadId }: AzureCommunicationChatAdapterArgs) => Promise<ChatAdapter>;
// @public
export function createAzureCommunicationChatAdapterFromClient(chatClient: StatefulChatClient, chatThreadClient: ChatThreadClient): Promise<ChatAdapter>;
// @public
export type CreateDefaultCallingHandlers = (callClient: StatefulCallClient, callAgent: CallAgent | undefined, deviceManager: StatefulDeviceManager | undefined, call: Call | undefined, options?: CallingHandlersOptions) => CallingHandlers;
// @public
export const createDefaultCallingHandlers: CreateDefaultCallingHandlers;
// @public
export const createDefaultChatHandlers: (chatClient: StatefulChatClient, chatThreadClient: ChatThreadClient) => ChatHandlers;
// @public
export const createDefaultTeamsCallingHandlers: (callClient: StatefulCallClient, callAgent?: TeamsCallAgent, deviceManager?: StatefulDeviceManager, call?: TeamsCall, options?: {
onResolveVideoBackgroundEffectsDependency?: () => Promise<VideoBackgroundEffectsDependency>;
onResolveDeepNoiseSuppressionDependency?: () => Promise<DeepNoiseSuppressionEffectDependency>;
}) => TeamsCallingHandlers;
// @public
export const createStatefulCallClient: (args: StatefulCallClientArgs, options?: StatefulCallClientOptions) => StatefulCallClient;
// @public
export const createStatefulChatClient: (args: StatefulChatClientArgs, options?: StatefulChatClientOptions) => StatefulChatClient;
// @public (undocumented)
export const createTeamsCallAdapter: (args: TeamsCallAdapterArgs) => Promise<TeamsCallAdapter>;
// @public
export const createTeamsCallAdapterFromClient: (callClient: StatefulCallClient, callAgent: TeamsCallAgent, locator: CallAdapterLocator, options?: TeamsAdapterOptions) => Promise<TeamsCallAdapter>;
// @public
export interface CreateVideoStreamViewResult {
view: {
updateScalingMode: (scalingMode: ViewScalingMode) => Promise<void>;
};
}
// @public
export type CreateViewResult = {
renderer: VideoStreamRenderer;
view: VideoStreamRendererView;
};
// @public
export type CustomAvatarOptions = {
coinSize?: number;
hidePersonaDetails?: boolean;
initialsTextColor?: string;
noVideoAvailableAriaLabel?: string;
presence?: PersonaPresence;
size?: PersonaSize;
styles?: IStyleFunctionOrObject<IPersonaStyleProps, IPersonaStyles>;
text?: string;
participantState?: ParticipantState;
showUnknownPersonaCoin?: boolean;
};
// @public
export type CustomCallControlButtonCallback = (args: CustomCallControlButtonCallbackArgs) => CustomCallControlButtonProps;
// @public
export interface CustomCallControlButtonCallbackArgs {
displayType?: CallControlDisplayType;
}
// @public
export type CustomCallControlButtonPlacement = 'primary' | 'overflow' | 'secondary';
// @public
export interface CustomCallControlButtonProps {
disabled?: boolean;
iconName?: string;
id?: string;
onItemClick?: () => void;
placement: CustomCallControlButtonPlacement;
showLabel?: boolean;
strings?: CustomCallControlButtonStrings;
}
// @public
export interface CustomCallControlButtonStrings {
ariaDescription?: string;
ariaLabel?: string;
label?: string;
tooltipContent?: string;
}
// @public
export interface CustomMessage extends MessageCommon {
// (undocumented)
content: string;
// (undocumented)
messageType: 'custom';
}
// @public
export const darkTheme: PartialTheme & CallingTheme;
// @public
export type DeclarativeCallAgent = CallAgent & IncomingCallManagement;
// @public
export type DeclarativeTeamsCallAgent = TeamsCallAgent & TeamsIncomingCallManagement;
// @public
export type DeepNoiseSuppressionEffectDependency = {
deepNoiseSuppressionEffect: AudioEffectsStartConfig;
};
// @public
export const DEFAULT_COMPONENT_ICONS: {
ChatMessageOptions: React_2.JSX.Element;
ControlButtonCameraOff: React_2.JSX.Element;
ControlButtonCameraOn: React_2.JSX.Element;
ControlButtonEndCall: React_2.JSX.Element;
ControlButtonMicOff: React_2.JSX.Element;
ControlButtonMicOn: React_2.JSX.Element;
ControlButtonOptions: React_2.JSX.Element;
ControlButtonParticipants: React_2.JSX.Element;
ControlButtonParticipantsContextualMenuItem: React_2.JSX.Element;
ControlButtonScreenShareStart: React_2.JSX.Element;
ControlButtonScreenShareStop: React_2.JSX.Element;
ControlButtonRaiseHand: React_2.JSX.Element;
ControlButtonLowerHand: React_2.JSX.Element;
ControlButtonMicProhibited: React_2.JSX.Element;
ControlButtonMicProhibitedSmall: React_2.JSX.Element;
ControlButtonCameraProhibited: React_2.JSX.Element;
ControlButtonCameraProhibitedSmall: React_2.JSX.Element;
RaiseHandContextualMenuItem: React_2.JSX.Element;
LowerHandContextualMenuItem: React_2.JSX.Element;
ReactionButtonIcon: React_2.JSX.Element;
OpenAttachment: React_2.JSX.Element;
EditBoxCancel: React_2.JSX.Element;
EditBoxSubmit: React_2.JSX.Element;
ErrorBarCallCameraAccessDenied: React_2.JSX.Element;
ErrorBarCallCameraAlreadyInUse: React_2.JSX.Element;
ErrorBarCallLocalVideoFreeze: React_2.JSX.Element;
ErrorBarCallMacOsCameraAccessDenied: React_2.JSX.Element;
ErrorBarCallMacOsMicrophoneAccessDenied: React_2.JSX.Element;
ErrorBarCallMicrophoneAccessDenied: React_2.JSX.Element;
ErrorBarCallMicrophoneMutedBySystem: React_2.JSX.Element;
ErrorBarCallMicrophoneUnmutedBySystem: React_2.JSX.Element;
ErrorBarCallNetworkQualityLow: React_2.JSX.Element;
ErrorBarCallNoMicrophoneFound: React_2.JSX.Element;
ErrorBarCallNoSpeakerFound: React_2.JSX.Element;
ErrorBarClear: React_2.JSX.Element;
ErrorBarCallVideoRecoveredBySystem: React_2.JSX.Element;
ErrorBarCallVideoStoppedBySystem: React_2.JSX.Element;
ErrorBarMutedByRemoteParticipant: React_2.JSX.Element;
NotificationBarRecording: React_2.JSX.Element;
NotificationBarBreakoutRoomOpened: React_2.JSX.Element;
NotificationBarBreakoutRoomPromptJoin: React_2.JSX.Element;
NotificationBarBreakoutRoomChanged: React_2.JSX.Element;
NotificationBarBreakoutRoomJoined: React_2.JSX.Element;
NotificationBarBreakoutRoomClosingSoon: React_2.JSX.Element;
NotificationBarBreakoutRoomClosed: React_2.JSX.Element;
HorizontalGalleryLeftButton: React_2.JSX.Element;
HorizontalGalleryRightButton: React_2.JSX.Element;
MessageDelivered: React_2.JSX.Element;
MessageEdit: React_2.JSX.Element;
MessageFailed: React_2.JSX.Element;
MessageRemove: React_2.JSX.Element;
MessageResend: React_2.JSX.Element;
MessageSeen: React_2.JSX.Element;
MessageSending: React_2.JSX.Element;
OptionsCamera: React_2.JSX.Element;
OptionsMic: React_2.JSX.Element;
OptionsSpeaker: React_2.JSX.Element;
ParticipantItemMicOff: React_2.JSX.Element;
ParticipantItemOptions: React_2.JSX.Element;
ParticipantItemOptionsHovered: React_2.JSX.Element;
ParticipantItemScreenShareStart: React_2.JSX.Element;
ParticipantItemSpotlighted: React_2.JSX.Element;
HoldCallContextualMenuItem: React_2.JSX.Element;
HoldCallButton: React_2.JSX.Element;
ResumeCall: React_2.JSX.Element;
SendBoxSend: React_2.JSX.Element;
SendBoxSendHovered: React_2.JSX.Element;
VideoTileMicOff: React_2.JSX.Element;
VideoTileCameraOff: React_2.JSX.Element;
DialpadBackspace: React_2.JSX.Element;
VideoTilePinned: React_2.JSX.Element;
ParticipantItemPinned: React_2.JSX.Element;
VideoTileMoreOptions: React_2.JSX.Element;
VideoTileScaleFit: React_2.JSX.Element;
VideoTileScaleFill: React_2.JSX.Element;
PinParticipant: React_2.JSX.Element;
UnpinParticipant: React_2.JSX.Element;
SplitButtonPrimaryActionCameraOn: React_2.JSX.Element;
SplitButtonPrimaryActionCameraOff: React_2.JSX.Element;
SplitButtonPrimaryActionMicUnmuted: React_2.JSX.Element;
SplitButtonPrimaryActionMicMuted: React_2.JSX.Element;
VerticalGalleryLeftButton: React_2.JSX.Element;
VerticalGalleryRightButton: React_2.JSX.Element;
ControlButtonVideoEffectsOption: React_2.JSX.Element;
ConfigurationScreenVideoEffectsButton: React_2.JSX.Element;
CaptionsIcon: React_2.JSX.Element;
CaptionsOffIcon: React_2.JSX.Element;
CaptionsSettingsIcon: React_2.JSX.Element;
ChangeSpokenLanguageIcon: React_2.JSX.Element;
ChangeCaptionLanguageIcon: React_2.JSX.Element;
ContextMenuCameraIcon: React_2.JSX.Element;
ContextMenuMicIcon: React_2.JSX.Element;
ContextMenuSpeakerIcon: React_2.JSX.Element;
ContextMenuRemoveParticipant: React_2.JSX.Element;
SurveyStarIcon: React_2.JSX.Element;
SurveyStarIconFilled: React_2.JSX.Element;
StartSpotlightContextualMenuItem: React_2.JSX.Element;
StopSpotlightContextualMenuItem: React_2.JSX.Element;
VideoTileSpotlighted: React_2.JSX.Element;
ContextualMenuMicMutedIcon: React_2.JSX.Element;
IncomingCallNotificationRejectIcon: React_2.JSX.Element;
IncomingCallNotificationAcceptIcon: React_2.JSX.Element;
IncomingCallNotificationAcceptWithVideoIcon: React_2.JSX.Element;
};
// @public
export const DEFAULT_COMPOSITE_ICONS: {
EditBoxCancel: JSX.Element;
EditBoxSubmit: JSX.Element;
MessageDelivered: JSX.Element;
MessageEdit: JSX.Element;
MessageFailed: JSX.Element;
MessageRemove: JSX.Element;
MessageSeen: JSX.Element;
MessageSending: JSX.Element;
ParticipantItemOptions: JSX.Element;
ParticipantItemOptionsHovered: JSX.Element;
SendBoxSend: JSX.Element;
SendBoxSendHovered: JSX.Element;
ControlBarPeopleButton?: JSX.Element | undefined;
ControlButtonCameraOff: JSX.Element;
ControlButtonCameraOn: JSX.Element;
ControlButtonEndCall: JSX.Element;
ControlButtonMicOff: JSX.Element;
ControlButtonMicOn: JSX.Element;
ControlButtonOptions: JSX.Element;
ControlButtonParticipants: JSX.Element;
ControlButtonScreenShareStart: JSX.Element;
ControlButtonScreenShareStop: JSX.Element;
ControlButtonCameraProhibited: JSX.Element;
ControlButtonCameraProhibitedSmall: JSX.Element;
ControlButtonMicProhibited: JSX.Element;
ControlButtonMicProhibitedSmall: JSX.Element;
ControlButtonRaiseHand: JSX.Element;
ControlButtonLowerHand: JSX.Element;
ControlButtonExitSpotlight?: JSX.Element | undefined;
RaiseHandContextualMenuItem: JSX.Element;
ReactionContextualMenuItem?: JSX.Element | undefined;
LowerHandContextualMenuItem: JSX.Element;
ReactionButtonIcon: JSX.Element;
ErrorBarCallCameraAccessDenied: JSX.Element;
ErrorBarCallCameraAlreadyInUse: JSX.Element;
ErrorBarCallLocalVideoFreeze: JSX.Element;
ErrorBarCallMacOsCameraAccessDenied: JSX.Element;
ErrorBarCallMacOsMicrophoneAccessDenied: JSX.Element;
ErrorBarCallMicrophoneAccessDenied: JSX.Element;
ErrorBarCallMicrophoneMutedBySystem: JSX.Element;
ErrorBarCallMicrophoneUnmutedBySystem: JSX.Element;
ErrorBarCallNetworkQualityLow: JSX.Element;
ErrorBarCallNoMicrophoneFound: JSX.Element;
ErrorBarCallNoSpeakerFound: JSX.Element;
ErrorBarClear: JSX.Element;
HorizontalGalleryLeftButton: JSX.Element;
HorizontalGalleryRightButton: JSX.Element;
LobbyScreenConnectingToCall?: JSX.Element | undefined;
LobbyScreenWaitingToBeAdmitted?: JSX.Element | undefined;
LocalDeviceSettingsCamera?: JSX.Element | undefined;
LocalDeviceSettingsMic?: JSX.Element | undefined;
LocalDeviceSettingsSpeaker?: JSX.Element | undefined;
LocalPreviewPlaceholder?: JSX.Element | undefined;
Muted?: JSX.Element | undefined;
NetworkReconnectIcon?: JSX.Element | undefined;
NoticePageAccessDeniedTeamsMeeting?: JSX.Element | undefined;
NoticePageJoinCallFailedDueToNoNetwork?: JSX.Element | undefined;
NoticePageLeftCall?: JSX.Element | undefined;
NoticePageRemovedFromCall?: JSX.Element | undefined;
NoticePageCallRejected?: JSX.Element | undefined;
NoticePageNotInvitedToRoom?: JSX.Element | undefined;
NoticePageRoomNotFound?: JSX.Element | undefined;
NoticePageRoomNotValid?: JSX.Element | undefined;
NoticePageCallTimeout?: JSX.Element | undefined;
OptionsCamera: JSX.Element;
OptionsMic: JSX.Element;
OptionsSpeaker: JSX.Element;
ParticipantItemMicOff: JSX.Element;
ParticipantItemScreenShareStart: JSX.Element;
VideoTileMicOff: JSX.Element;
LocalCameraSwitch?: JSX.Element | undefined;
PeoplePaneAddPerson?: JSX.Element | undefined;
PeoplePaneOpenDialpad?: JSX.Element | undefined;
DialpadStartCall?: JSX.Element | undefined;
NoticePageInviteToRoomRemoved?: JSX.Element | undefined;
BlurVideoBackground?: JSX.Element | undefined;
RemoveVideoBackgroundEffect?: JSX.Element | undefined;
GalleryOptions?: JSX.Element | undefined;
SpeakerGalleryLayout?: JSX.Element | undefined;
FloatingLocalVideoGalleryLayout?: JSX.Element | undefined;
DefaultGalleryLayout?: JSX.Element | undefined;
FocusedContentGalleryLayout?: JSX.Element | undefined;
OverflowGalleryTop?: JSX.Element | undefined;
LargeGalleryLayout?: JSX.Element | undefined;
DefaultCustomButton?: JSX.Element | undefined;
DtmfDialpadButton?: JSX.Element | undefined;
PhoneNumberButton?: JSX.Element | undefined;
JoinByPhoneDialStepIcon?: JSX.Element | undefined;
JoinByPhoneConferenceIdIcon?: JSX.Element | undefined;
JoinByPhoneWaitToBeAdmittedIcon?: JSX.Element | undefined;
PeoplePaneMoreButton?: JSX.Element | undefined;
StopAllSpotlightMenuButton?: JSX.Element | undefined;
ChevronLeft?: JSX.Element | undefined;
ControlBarChatButtonActive?: JSX.Element | undefined;
ControlBarChatButtonInactive?: JSX.Element | undefined;
Link?: JSX.Element | undefined;
MoreDrawerMicrophones?: JSX.Element | undefined;
MoreDrawerPeople?: JSX.Element | undefined;
MoreDrawerSelectedMicrophone?: JSX.Element | undefined;
MoreDrawerSelectedSpeaker?: JSX.Element | undefined;
MoreDrawerSpeakers?: JSX.Element | undefined;
SendBoxAttachFile?: JSX.Element | undefined;
ChatMessageOptions: React_2.JSX.Element;
ControlButtonParticipantsContextualMenuItem: React_2.JSX.Element;
OpenAttachment: React_2.JSX.Element;
ErrorBarCallVideoRecoveredBySystem: React_2.JSX.Element;
ErrorBarCallVideoStoppedBySystem: React_2.JSX.Element;
ErrorBarMutedByRemoteParticipant: React_2.JSX.Element;
NotificationBarRecording: React_2.JSX.Element;
NotificationBarBreakoutRoomOpened: React_2.JSX.Element;
NotificationBarBreakoutRoomPromptJoin: React_2.JSX.Element;
NotificationBarBreakoutRoomChanged: React_2.JSX.Element;
NotificationBarBreakoutRoomJoined: React_2.JSX.Element;
NotificationBarBreakoutRoomClosingSoon: React_2.JSX.Element;
NotificationBarBreakoutRoomClosed: React_2.JSX.Element;
MessageResend: React_2.JSX.Element;
ParticipantItemSpotlighted: React_2.JSX.Element;
HoldCallContextualMenuItem: React_2.JSX.Element;
HoldCallButton: React_2.JSX.Element;
ResumeCall: React_2.JSX.Element;
VideoTileCameraOff: React_2.JSX.Element;
DialpadBackspace: React_2.JSX.Element;
VideoTilePinned: React_2.JSX.Element;
ParticipantItemPinned: React_2.JSX.Element;
VideoTileMoreOptions: React_2.JSX.Element;
VideoTileScaleFit: React_2.JSX.Element;
VideoTileScaleFill: React_2.JSX.Element;
PinParticipant: React_2.JSX.Element;
UnpinParticipant: React_2.JSX.Element;
SplitButtonPrimaryActionCameraOn: React_2.JSX.Element;
SplitButtonPrimaryActionCameraOff: React_2.JSX.Element;
SplitButtonPrimaryActionMicUnmuted: React_2.JSX.Element;
SplitButtonPrimaryActionMicMuted: React_2.JSX.Element;
VerticalGalleryLeftButton: React_2.JSX.Element;
VerticalGalleryRightButton: React_2.JSX.Element;
ControlButtonVideoEffectsOption: React_2.JSX.Element;
ConfigurationScreenVideoEffectsButton: React_2.JSX.Element;
CaptionsIcon: React_2.JSX.Element;
CaptionsOffIcon: React_2.JSX.Element;
CaptionsSettingsIcon: React_2.JSX.Element;
ChangeSpokenLanguageIcon: React_2.JSX.Element;
ChangeCaptionLanguageIcon: React_2.JSX.Element;
ContextMenuCameraIcon: React_2.JSX.Element;
ContextMenuMicIcon: React_2.JSX.Element;
ContextMenuSpeakerIcon: React_2.JSX.Element;
ContextMenuRemoveParticipant: React_2.JSX.Element;
SurveyStarIcon: React_2.JSX.Element;
SurveyStarIconFilled: React_2.JSX.Element;
StartSpotlightContextualMenuItem: React_2.JSX.Element;
StopSpotlightContextualMenuItem: React_2.JSX.Element;
VideoTileSpotlighted: React_2.JSX.Element;
ContextualMenuMicMutedIcon: React_2.JSX.Element;
IncomingCallNotificationRejectIcon: React_2.JSX.Element;
IncomingCallNotificationAcceptIcon: React_2.JSX.Element;
IncomingCallNotificationAcceptWithVideoIcon: React_2.JSX.Element;
};
// @public
export type DeviceManagerState = {
isSpeakerSelectionAvailable: boolean;
selectedMicrophone?: AudioDeviceInfo;
selectedSpeaker?: AudioDeviceInfo;
selectedCamera?: VideoDeviceInfo;
cameras: VideoDeviceInfo[];
microphones: AudioDeviceInfo[];
speakers: AudioDeviceInfo[];
deviceAccess?: DeviceAccess;
unparentedViews: LocalVideoStreamState[];
};
// @public
export const DevicesButton: (props: DevicesButtonProps) => JSX.Element;
// @public
export interface DevicesButtonContextualMenuStyles extends IContextualMenuStyles {
menuItemStyles?: IContextualMenuItemStyles;
}
// @public
export interface DevicesButtonProps extends ControlBarButtonProps {
cameras?: OptionsDevice[];
microphones?: OptionsDevice[];
onSelectCamera?: (device: OptionsDevice) => Promise<void>;
onSelectMicrophone?: (device: OptionsDevice) => Promise<void>;
onSelectSpeaker?: (device: OptionsDevice) => Promise<void>;
selectedCamera?: OptionsDevice;
selectedMicrophone?: OptionsDevice;
selectedSpeaker?: OptionsDevice;
speakers?: OptionsDevice[];
strings?: Partial<DevicesButtonStrings>;
styles?: DevicesButtonStyles;
}
// @public
export type DevicesButtonSelector = (state: CallClientState, props: CallingBaseSelectorProps) => {
microphones: AudioDeviceInfo[];
speakers: AudioDeviceInfo[];
cameras: VideoDeviceInfo[];
selectedMicrophone?: AudioDeviceInfo;
selectedSpeaker?: AudioDeviceInfo;
selectedCamera?: VideoDeviceInfo;
};
// @public
export interface DevicesButtonStrings {
cameraMenuTitle: string;
cameraMenuTooltip: string;
label: string;
microphoneMenuTitle: string;
microphoneMenuTooltip: string;
speakerMenuTitle: string;
speakerMenuTooltip: string;
tooltipContent?: string;
}
// @public
export interface DevicesButtonStyles extends ControlBarButtonStyles {
menuStyles?: Partial<DevicesButtonContextualMenuStyles>;
}
// @public
export type DiagnosticChangedEventListner = (event: MediaDiagnosticChangedEvent | NetworkDiagnosticChangedEvent) => void;
// @public
export interface DiagnosticsCallFeatureState {
media: MediaDiagnosticsState;
network: NetworkDiagnosticsState;
}
// @public
export const Dialpad: (props: DialpadProps) => JSX.Element;
// @public
export type DialpadMode = 'dtmf' | 'dialer';
// @public
export interface DialpadProps {
dialpadMode?: DialpadMode;
disableDtmfPlayback?: boolean;
dtmfAudioContext?: AudioContext;
longPressTrigger?: LongPressTrigger;
onChange?: (input: string) => void;
onClickDialpadButton?: (buttonValue: string, buttonIndex: number) => void;
onSendDtmfTone?: (dtmfTone: DtmfTone) => Promise<void>;
showDeleteButton?: boolean;
// (undocumented)
strings?: DialpadStrings;
styles?: DialpadStyles;
textFieldValue?: string;
}
// @public
export interface DialpadStrings {
// (undocumented)
deleteButtonAriaLabel?: string;
// (undocumented)
placeholderText: string;
}
// @public
export interface DialpadStyles {
// (undocumented)
button?: IButtonStyles;
// (undocumented)
deleteIcon?: IButtonStyles;
// (undocumented)
digit?: IStyle;
// (undocumented)
letter?: IStyle;
// (undocumented)
root?: IStyle;
// (undocumented)
textField?: Partial<ITextFieldStyles>;
}
// @public
export type DisplayNameChangedListener = (event: {
participantId: CommunicationIdentifierKind;
displayName: string;
}) => void;
// @public
interface Disposable_2 {
dispose(): void;
}
export { Disposable_2 as Disposable }
// @public
export interface DtmfDialPadOptions {
// (undocumented)
dialerBehavior?: 'autoShow' | 'alwaysShow' | 'alwaysHide';
}
// @public
export type DtmfTone = 'A' | 'B' | 'C' | 'D' | 'Flash' | 'Num0' | 'Num1' | 'Num2' | 'Num3' | 'Num4' | 'Num5' | 'Num6' | 'Num7' | 'Num8' | 'Num9' | 'Pound' | 'Star';
// @public
export type EmptySelector = () => Record<string, never>;
// @public
export const EndCallButton: (props: EndCallButtonProps) => JSX.Element;
// @public
export interface EndCallButtonProps extends ControlBarButtonProps {
enableEndCallMenu?: boolean;
onHangUp?: (forEveryone?: boolean) => Promise<void>;
strings?: EndCallButtonStrings;
}
// @public
export interface EndCallButtonStrings {
endCallOption?: string;
label: string;
leaveOption?: string;
tooltipContent?: string;
}
// @public
export const ErrorBar: (props: ErrorBarProps) => JSX.Element;
// @public
export interface ErrorBarProps extends IMessageBarProps {
activeErrorMessages: ActiveErrorMessage[];
ignorePremountErrors?: boolean;
onDismissError?: (dismissedError: ActiveErrorMessage) => void;
strings?: ErrorBarStrings;
}
// @public
export interface ErrorBarStrings {
accessDenied: string;
callCameraAccessDenied: string;
callCameraAccessDeniedSafari: string;
callCameraAlreadyInUse: string;
callLocalVideoFreeze: string;
callMacOsCameraAccessDenied: string;
callMacOsMicrophoneAccessDenied: string;
callMacOsScreenShareAccessDenied: string;
callMicrophoneAccessDenied: string;
callMicrophoneAccessDeniedSafari: string;
callMicrophoneMutedBySystem: string;
callMicrophoneUnmutedBySystem: string;
callNetworkQualityLow: string;
callNoMicrophoneFound: string;
callNoSpeakerFound: string;
callVideoRecoveredBySystem: string;
callVideoStoppedBySystem: string;
cameraFrozenForRemoteParticipants?: string;
dismissButtonAriaLabel?: string;
failedToJoinCallGeneric?: string;
failedToJoinCallInvalidMeetingLink?: string;
mutedByRemoteParticipant: string;
muteGeneric: string;
sendMessageGeneric: string;
sendMessageNotInChatThread: string;
startScreenShareGeneric: string;
startSpotlightWhileMaxParticipantsAreSpotlighted: string;
startVideoGeneric: string;
stopScreenShareGeneric: string;
stopVideoGeneric: string;
teamsMeetingCallNetworkQualityLow: string;
unableToReachChatService: string;
unableToStartVideoEffect?: string;
unmuteGeneric: string;
userNotInChatThread: string;
}
// @public
export type ErrorType = keyof ErrorBarStrings;
// @public
export const FluentThemeProvider: (props: FluentThemeProviderProps) => JSX.Element;
// @public
export interface FluentThemeProviderProps {
children: React_2.ReactNode;
fluentTheme?: PartialTheme | Theme;
rootStyle?: React_2.CSSProperties | undefined;
rtl?: boolean;
}
// @public
export const fromFlatCommunicationIdentifier: (id: string) => CommunicationIdentifier;
// @public
export type GetCallingSelector<Component extends (props: any) => JSX.Element | undefined> = AreEqual<Component, typeof VideoGallery> extends true ? VideoGallerySelector : AreEqual<Component, typeof DevicesButton> extends true ? DevicesButtonSelector : AreEqual<Component, typeof MicrophoneButton> extends true ? MicrophoneButtonSelector : AreEqual<Component, typeof CameraButton> extends true ? CameraButtonSelector : AreEqual<Component, typeof ScreenShareButton> extends true ? ScreenShareButtonSelector : AreEqual<Component, typeof ParticipantList> extends true ? ParticipantListSelector : AreEqual<Component, typeof ParticipantsButton> extends true ? ParticipantsButtonSelector : AreEqual<Component, typeof EndCallButton> extends true ? EmptySelector : AreEqual<Component, typeof ErrorBar> extends true ? CallErrorBarSelector : AreEqual<Component, typeof Dialpad> extends true ? EmptySelector : AreEqual<Component, typeof HoldButton> extends true ? HoldButtonSelector : AreEqual<Component, typeof NotificationStack> extends true ? NotificationStackSelector : AreEqual<Component, typeof IncomingCallStack> extends true ? IncomingCallStackSelector : AreEqual<Component, typeof ReactionButton> extends true ? RaiseHandButtonSelector : AreEqual<Component, typeof CaptionsSettingsModal> extends true ? CaptionSettingsSelector : AreEqual<Component, typeof CaptionsBanner> extends true ? CaptionsBannerSelector : AreEqual<Component, typeof StartCaptionsButton> extends true ? StartCaptionsButtonSelector : AreEqual<Component, typeof RaiseHandButton> extends true ? EmptySelector : undefined;
// @public
export const getCallingSelector: <Component extends (props: any) => JSX.Element | undefined>(component: Component) => GetCallingSelector<Component>;
// @public
export type GetChatSelector<Component extends (props: any) => JSX.Element | undefined> = AreEqual<Component, typeof SendBox> extends true ? SendBoxSelector : AreEqual<Component, typeof MessageThread> extends true ? MessageThreadSelector : AreEqual<Component, typeof TypingIndicator> extends true ? TypingIndicatorSelector : AreEqual<Component, typeof ParticipantList> extends true ? ChatParticipantListSelector : AreEqual<Component, typeof ErrorBar> extends true ? ChatErrorBarSelector : undefined;
// @public
export const getChatSelector: <Component extends (props: any) => JSX.Element | undefined>(component: Component) => GetChatSelector<Component>;
// @public
export const GridLayout: (props: GridLayoutProps) => JSX.Element;
// @public
export interface GridLayoutProps {
// (undocumented)
children: React_2.ReactNode;
styles?: BaseCustomStyles;
}
// @public
export interface GridLayoutStyles extends BaseCustomStyles {
children?: IStyle;
}
// @public
export const HoldButton: (props: HoldButtonProps) => JSX.Element;
// @public (undocumented)
export interface HoldButtonProps extends ControlBarButtonProps {
onToggleHold: () => Promise<void>;
strings?: HoldButtonStrings;
}
// @public
export type HoldButtonSelector = (state: CallClientState, props: CallingBaseSelectorProps) => {
checked: boolean;
};
// @public
export interface HoldButtonStrings {
offLabel?: string;
onLabel?: string;
tooltipOffContent?: string;
tooltipOnContent?: string;
}
// @public
export interface HorizontalGalleryStyles extends BaseCustomStyles {
children?: IStyle;
nextButton?: IStyle;
previousButton?: IStyle;
}
// @internal
export const _IdentifierProvider: (props: _IdentifierProviderProps) => JSX.Element;
// @internal
export interface _IdentifierProviderProps {
// (undocumented)
children: React_2.ReactNode;
// (undocumented)
identifiers?: _Identifiers;
}
// @internal
export interface _Identifiers {
horizontalGalleryVideoTile: string;
messageContent: string;
messageTimestamp: string;
overflowGalleryLeftNavButton: string;
overflowGalleryRightNavButton: string;
participantButtonPeopleMenuItem: string;
participantItemMenuButton: string;
participantList: string;
participantListPeopleButton: string;
participantListRemoveParticipantButton: string;
sendboxTextField: string;
typingIndicator: string;
verticalGalleryPageCounter: string;
verticalGalleryVideoTile: string;
videoGallery: string;
videoTile: string;
}
// @public
export const ImageOverlay: (props: ImageOverlayProps) => JSX.Element;
// @public
export interface ImageOverlayProps {
altText?: string;
imageSrc: string;
isOpen: boolean;
onDismiss: () => void;
onDownloadButtonClicked?: (imageSrc: string) => void;
title?: string;
titleIcon?: JSX.Element;
}
// @public
export interface ImageOverlayStrings {
dismissButtonAriaLabel: string;
downloadButtonLabel: string;
overlayVisibleMessage: string;
}
// @public
export type IncomingCallManagement = {
incomingCalls: ReadonlyArray<IncomingCall>;
};
// @public
export const IncomingCallNotification: (props: IncomingCallNotificationProps) => JSX.Element;
// @public
export interface IncomingCallNotificationProps {
acceptOptions: {
showAcceptWithVideo: boolean;
};
alertText?: string;
avatarImage?: string;
callerName?: string;
onAcceptWithAudio: () => void;
onAcceptWithVideo: () => void;
onDismiss?: () => void;
onReject: () => void;
onRenderAvatar?: () => JSX.Element;
personaSize?: number;
strings?: IncomingCallNotificationStrings;
styles?: IncomingCallNotificationStyles;
}
// @public
export interface IncomingCallNotificationStrings {
incomingCallNoticicationAcceptWithAudioAriaLabel?: string;
incomingCallNoticicationAcceptWithVideoAriaLabel?: string;
incomingCallNoticicationRejectAriaLabel?: string;
incomingCallNotificationAccceptWithVideoButtonLabel?: string;
incomingCallNotificationAcceptButtonLabel?: string;
incomingCallNotificationDismissButtonAriaLabel?: string;
incomingCallNotificationPlaceholderAlert?: string;
incomingCallNotificationPlaceholderId?: string;
incomingCallNotificationRejectButtonLabel?: string;
}
// @public
export interface IncomingCallNotificationStyles {
acceptButton?: IButtonStyles;
avatarContainer?: IStackStyles;
rejectButton?: IButtonStyles;
root?: IStackStyles;
}
// @public
export const IncomingCallStack: (props: IncomingCallStackProps) => JSX.Element;
// @public
export interface IncomingCallStackCall {
callerInfo: {
displayName?: string;
};
id: string;
videoAvailable: boolean;
}
// @public
export interface IncomingCallStackProps {
activeIncomingCalls: IncomingCallStackCall[];
onAcceptCall: (incomingCallId: string, useVideo?: boolean) => void;
onRejectCall: (incomingCallId: string) => void;
removedIncomingCalls: IncomingCallStackCall[];
strings?: IncomingCallNotificationStrings;
styles?: IncomingCallNotificationStyles;
tabIndex?: number;
}
// @public
export type IncomingCallStackSelector = (state: CallClientState) => {
activeIncomingCalls: IncomingCallStackCall[];
removedIncomingCalls: IncomingCallStackCall[];
};
// @public
export interface IncomingCallState {
callEndReason?: CallEndReason;
callerInfo: CallerInfo;
endTime?: Date;
id: string;
info: CallInfoState;
startTime: Date;
}
// @public
export interface InlineImage {
imageAttributes: React_2.ImgHTMLAttributes<HTMLImageElement>;
messageId: string;
}
// @public
export interface InlineImageOptions {
onRenderInlineImage?: (inlineImage: InlineImage, defaultOnRender: (inlineImage: InlineImage) => JSX.Element) => JSX.Element;
}
// @public
export type IsCaptionLanguageChangedListener = (event: {
activeCaptionLanguage: string;
}) => void;
// @public
export type IsCaptionsActiveChangedListener = (event: {
isActive: boolean;
}) => void;
// @public
export type IsLocalScreenSharingActiveChangedListener = (event: {
isScreenSharingOn: boolean;
}) => void;
// @public
export type IsMutedChangedListener = (event: {
identifier: CommunicationIdentifierKind;
isMuted: boolean;
}) => void;
// @public
export type IsSpeakingChangedListener = (event: {
identifier: CommunicationIdentifierKind;
isSpeaking: boolean;
}) => void;
// @public
export type IsSpokenLanguageChangedListener = (event: {
activeSpokenLanguage: string;
}) => void;
// @public
export interface JoinCallOptions {
cameraOn?: boolean | 'keep';
microphoneOn?: boolean | 'keep';
}
// @public
export interface JumpToNewMessageButtonProps {
onClick: () => void;
text: string;
}
// @public
export const lightTheme: PartialTheme & CallingTheme;
// @public
export const loadCallComposite: (loaderArgs: CallCompositeLoaderProps, htmlElement: HTMLElement) => Promise<CallAdapter | undefined>;
// @public
export const loadCallWithChatComposite: (loaderArgs: CallWithChatCompositeLoaderProps, htmlElement: HTMLElement) => Promise<CallWithChatAdapter | undefined>;
// @public
export const loadChatComposite: (loaderArgs: ChatCompositeLoaderProps, htmlElement: HTMLElement) => Promise<ChatAdapter | undefined>;
// @public
export type LoadingState = 'loading' | 'none' | 'reconnecting';
// @public
export const loadOutboundCallComposite: (loaderArgs: OutboundCallCompositeLoaderProps, htmlElement: HTMLElement) => Promise<CallAdapter | undefined>;
// @public
export const LocalizationProvider: (props: LocalizationProviderProps) => JSX.Element;
// @public
export type LocalizationProviderProps = {
locale: ComponentLocale;
children: React_2.ReactNode;
};
// @public (undocumented)
export interface LocalVideoCameraCycleButtonProps {
ariaDescription?: string;
cameras?: OptionsDevice[];
label?: string;
onSelectCamera?: (device: OptionsDevice) => Promise<void>;
selectedCamera?: OptionsDevice;
size?: 'small' | 'large';
}
// @public
export interface LocalVideoStreamState {
mediaStreamType: MediaStreamType;
source: VideoDeviceInfo;
videoEffects?: LocalVideoStreamVideoEffectsState;
view?: VideoStreamRendererViewState;
}
// @public
export interface LocalVideoStreamVideoEffectsState {
activeEffects?: VideoEffectName[];
}
// @public
export interface LocalVideoTileOptions {
position?: 'grid' | 'floating';
}
// @public
export type LocalVideoTileSize = '9:16' | '16:9' | 'hidden' | 'followDeviceOrientation';
// @public
export type LongPressTrigger = 'mouseAndTouch' | 'touch';
// @public
export type MediaAccess = {
isAudioPermitted: boolean;
isVideoPermitted: boolean;
};
// @public
export interface MediaAccessState {
isAudioPermitted: boolean;
isVideoPermitted: boolean;
}
// @public
export type MediaDiagnosticChangedEvent = MediaDiagnosticChangedEventArgs & {
type: 'media';
};
// @public
export interface MediaDiagnosticsState {
// (undocumented)
latest: LatestMediaDiagnostics;
}
// @public
export interface MeetingConferencePhoneInfoModalStrings {
meetingConferencePhoneInfoModalDialIn: string;
meetingConferencePhoneInfoModalMeetingId: string;
meetingConferencePhoneInfoModalNoPhoneAvailable: string;
meetingConferencePhoneInfoModalTitle: string;
meetingConferencePhoneInfoModalToll: string;
meetingConferencePhoneInfoModalTollFree: string;
meetingConferencePhoneInfoModalTollGeoData: string;
meetingConferencePhoneInfoModalWait: string;
}
// @public
export type Message = ChatMessage | SystemMessage | CustomMessage;
// @public
export type MessageAttachedStatus = 'bottom' | 'top' | boolean;
// @public
export interface MessageCommon {
// (undocumented)
createdOn: Date;
// (undocumented)
messageId: string;
}
// @public
export type MessageContentType = 'text' | 'html' | 'richtext/html' | 'unknown';
// @public
export type MessageDeletedListener = MessageReceivedListener;
// @public
export type MessageEditedListener = MessageReceivedListener;
// @public
export type MessageProps = {
message: Message;
strings: MessageThreadStrings;
messageContainerStyle?: ComponentSlotStyle;
showDate?: boolean;
disableEditing?: boolean;
onUpdateMessage?: UpdateMessageCallback;
onCancelEditMessage?: CancelEditCallback;
onDeleteMessage?: (messageId: string) => Promise<void>;
onSendMessage?: (content: string) => Promise<void>;
};
// @public
export type MessageReadListener = (event: {
message: ChatMessage_2;
readBy: CommunicationUserKind;
}) => void;
// @public
export type MessageReceivedListener = (event: {
message: ChatMessage_2;
}) => void;
// @public
export type MessageRenderer = (props: MessageProps) => JSX.Element;
// @public
export type MessageSentListener = MessageReceivedListener;
// @public
export type MessageStatus = 'delivered' | 'sending' | 'seen' | 'failed';
// @public
export const MessageStatusIndicator: (props: MessageStatusIndicatorProps) => JSX.Element;
// @public
export interface MessageStatusIndicatorProps {
// (undocumented)
onToggleToolTip?: (isToggled: boolean) => void;
// (undocumented)
readCount?: number;
remoteParticipantsCount?: number;
status?: MessageStatus;
strings?: MessageStatusIndicatorStrings;
styles?: BaseCustomStyles;
}
// @public
export interface MessageStatusIndicatorStrings {
deliveredAriaLabel?: string;
deliveredTooltipText: string;
failedToSendAriaLabel?: string;
failedToSendTooltipText: string;
readByTooltipText?: string;
seenAriaLabel?: string;
seenTooltipText: string;
sendingAriaLabel?: string;
sendingTooltipText: string;
}
// @public
export const MessageThread: (props: MessageThreadProps) => JSX.Element;
// @public
export type MessageThreadProps = {
userId: string;
messages: (ChatMessage | SystemMessage | CustomMessage)[];
participantCount?: number;
readReceiptsBySenderId?: ReadReceiptsBySenderId;
styles?: MessageThreadStyles;
disableJumpToNewMessageButton?: boolean;
showMessageDate?: boolean;
showMessageStatus?: boolean;
numberOfChatMessagesToReload?: number;
onMessageSeen?: (messageId: string) => Promise<void>;
onRenderMessageStatus?: (messageStatusIndicatorProps: MessageStatusIndicatorProps) => JSX.Element | null;
onRenderAvatar?: OnRenderAvatarCallback;
onRenderJumpToNewMessageButton?: (newMessageButtonProps: JumpToNewMessageButtonProps) => JSX.Element;
onLoadPreviousChatMessages?: (messagesToLoad: number) => Promise<boolean>;
onRenderMessage?: (messageProps: MessageProps, messageRenderer?: MessageRenderer) => JSX.Element;
onUpdateMessage?: UpdateMessageCallback;
onCancelEditMessage?: CancelEditCallback;
onDeleteMessage?: (messageId: string) => Promise<void>;
onSendMessage?: (content: string) => Promise<void>;
disableEditing?: boolean;
strings?: Partial<MessageThreadStrings>;
inlineImageOptions?: InlineImageOptions;
};
// @public
export type MessageThreadSelector = (state: ChatClientState, props: ChatBaseSelectorProps) => {
userId: string;
showMessageStatus: boolean;
messages: Message[];
};
// @public
export interface MessageThreadStrings {
actionMenuMoreOptions?: string;
attachmentCardGroupMessage: string;
editBoxCancelButton: string;
editBoxPlaceholderText: string;
editBoxSubmitButton: string;
editBoxTextLimit: string;
editedMessageLiveAuthorIntro: string;
editedMessageLocalUserLiveAuthorIntro: string;
editedTag: string;
editMessage: string;
failToSendTag?: string;
friday: string;
liveAuthorIntro: string;
messageContentAriaText: string;
messageContentMineAriaText: string;
messageDeletedAnnouncementAriaLabel: string;
messageReadCount?: string;
monday: string;
newMessagesIndicator: string;
noDisplayNameSub: string;
openAttachment: string;
participantJoined: string;
participantLeft: string;
removeMessage: string;
resendMessage?: string;
saturday: string;
sunday: string;
thursday: string;
tuesday: string;
wednesday: string;
yesterday: string;
}
// @public
export interface MessageThreadStyles extends BaseCustomStyles {
chatContainer?: ComponentSlotStyle;
chatItemMessageContainer?: ComponentSlotStyle;
chatMessageContainer?: ComponentSlotStyle;
failedMyChatMessageContainer?: ComponentSlotStyle;
loadPreviousMessagesButtonContainer?: IStyle;
messageStatusContainer?: (mine: boolean) => IStyle;
myChatItemMessageContainer?: ComponentSlotStyle;
myChatMessageContainer?: ComponentSlotStyle;
newMessageButtonContainer?: IStyle;
systemMessageContainer?: ComponentSlotStyle;
}
// @public
export const MicrophoneButton: (props: MicrophoneButtonProps) => JSX.Element;
// @public
export interface MicrophoneButtonContextualMenuStyles extends IContextualMenuStyles {
menuItemStyles?: IContextualMenuItemStyles;
}
// @public
export interface MicrophoneButtonProps extends ControlBarButtonProps {
enableDeviceSelectionMenu?: boolean;
isDeepNoiseSuppressionOn?: boolean;
microphones?: OptionsDevice[];
onClickNoiseSuppression?: () => void;
onSelectMicrophone?: (device: OptionsDevice) => Promise<void>;
onSelectSpeaker?: (device: OptionsDevice) => Promise<void>;
onToggleMicrophone?: () => Promise<void>;
selectedMicrophone?: OptionsDevice;
selectedSpeaker?: OptionsDevice;
showNoiseSuppressionButton?: boolean;
speakers?: OptionsDevice[];
strings?: Partial<MicrophoneButtonStrings>;
styles?: Partial<MicrophoneButtonStyles>;
}
// @public
export type MicrophoneButtonSelector = (state: CallClientState, props: CallingBaseSelectorProps) => {
disabled: boolean;
checked: boolean;
microphones: AudioDeviceInfo[];
speakers: AudioDeviceInfo[];
selectedMicrophone?: AudioDeviceInfo;
selectedSpeaker?: AudioDeviceInfo;
};
// @public
export interface MicrophoneButtonStrings {
deepNoiseSuppressionOffAnnouncement?: string;
deepNoiseSuppressionOnAnnouncement?: string;
deepNoiseSuppressionTitle?: string;
microphoneActionTurnedOffAnnouncement?: string;
microphoneActionTurnedOnAnnouncement?: string;
microphoneAriaDescription?: string;
microphoneButtonSplitRoleDescription?: string;
microphoneMenuTitle?: string;
microphoneMenuTooltip?: string;
microphonePrimaryActionSplitButtonTitle?: string;
offLabel: string;
offSplitButtonAriaLabel?: string;
offSplitButtonMicrophonePrimaryAction?: string;
onLabel: string;
onSplitButtonAriaLabel?: string;
onSplitButtonMicrophonePrimaryAction?: string;
speakerMenuTitle?: string;
speakerMenuTooltip?: string;
tooltipDisabledContent?: string;
tooltipOffContent?: string;
tooltipOnContent?: string;
}
// @public
export interface MicrophoneButtonStyles extends ControlBarButtonStyles {
menuStyles?: Partial<MicrophoneButtonContextualMenuStyles>;
}
// @public
export type NetworkDiagnosticChangedEvent = NetworkDiagnosticChangedEventArgs & {
type: 'network';
};
// @public
export interface NetworkDiagnosticsState {
// (undocumented)
latest: LatestNetworkDiagnostics;
}
// @public
const Notification_2: (props: NotificationProps) => JSX.Element;
export { Notification_2 as Notification }
// @public
export interface NotificationProps {
ariaLive?: 'assertive' | 'off' | 'polite';
autoDismiss?: boolean;
notificationIconProps?: IIconProps;
notificationStrings?: NotificationStrings;
onClickLink?: () => void;
onClickPrimaryButton?: () => void;
onClickSecondaryButton?: () => void;
onDismiss?: () => void;
role?: 'alert' | 'status' | 'presentation' | 'none';
showStackedEffect?: boolean;
styles?: NotificationStyles;
}
// @public
export const NotificationStack: (props: NotificationStackProps) => JSX.Element;
// @public
export interface NotificationStackProps {
activeNotifications: ActiveNotification[];
ignorePremountNotifications?: boolean;
maxNotificationsToShow?: number;
onDismissNotification?: (dismissedNotification: ActiveNotification) => void;
strings?: NotificationStackStrings;
}
// @public
export type NotificationStackSelector = (state: CallClientState, props: CallingBaseSelectorProps) => {
activeErrorMessages: ActiveNotification[];
activeNotifications: ActiveNotification[];
};
// @public
export interface NotificationStackStrings {
assignedBreakoutRoomChanged?: NotificationStrings;
assignedBreakoutRoomClosed?: NotificationStrings;
assignedBreakoutRoomOpened?: NotificationStrings;
assignedBreakoutRoomOpenedPromptJoin?: NotificationStrings;
breakoutRoomClosingSoon?: NotificationStrings;
breakoutRoomJoined?: NotificationStrings;
callCameraAccessDenied?: NotificationStrings;
callCameraAccessDeniedSafari?: NotificationStrings;
callCameraAlreadyInUse?: NotificationStrings;
callLocalVideoFreeze?: NotificationStrings;
callMacOsCameraAccessDenied?: NotificationStrings;
callMacOsMicrophoneAccessDenied?: NotificationStrings;
callMacOsScreenShareAccessDenied?: NotificationStrings;
callMicrophoneAccessDenied?: NotificationStrings;
callMicrophoneAccessDeniedSafari?: NotificationStrings;
callMicrophoneMutedBySystem?: NotificationStrings;
callMicrophoneUnmutedBySystem?: NotificationStrings;
callNetworkQualityLow?: NotificationStrings;
callNoMicrophoneFound?: NotificationStrings;
callNoSpeakerFound?: NotificationStrings;
callVideoRecoveredBySystem?: NotificationStrings;
callVideoStoppedBySystem?: NotificationStrings;
cameraFrozenForRemoteParticipants?: NotificationStrings;
capabilityTurnVideoOnAbsent?: NotificationStrings;
capabilityTurnVideoOnPresent?: NotificationStrings;
capabilityUnmuteMicAbsent?: NotificationStrings;
capabilityUnmuteMicPresent?: NotificationStrings;
dismissButtonAriaLabel?: NotificationStrings;
failedToJoinCallGeneric?: NotificationStrings;
failedToJoinCallInvalidMeetingLink?: NotificationStrings;
mutedByRemoteParticipant?: NotificationStrings;
muteGeneric?: NotificationStrings;
recordingAndTranscriptionStarted?: NotificationStrings;
recordingAndTranscriptionStopped?: NotificationStrings;
recordingStarted?: NotificationStrings;
recordingStopped?: NotificationStrings;
recordingStoppedStillTranscribing?: NotificationStrings;
speakingWhileMuted?: NotificationStrings;
startScreenShareGeneric?: NotificationStrings;
startSpotlightWhileMaxParticipantsAreSpotlighted?: NotificationStrings;
startVideoGeneric?: NotificationStrings;
stopScreenShareGeneric?: NotificationStrings;
stopVideoGeneric?: NotificationStrings;
teamsMeetingCallNetworkQualityLow?: NotificationStrings;
transcriptionStarted?: NotificationStrings;
transcriptionStopped?: NotificationStrings;
transcriptionStoppedStillRecording?: NotificationStrings;
unableToStartVideoEffect?: NotificationStrings;
unmuteGeneric?: NotificationStrings;
}
// @public
export interface NotificationStrings {
dismissButtonAriaLabel?: string;
linkLabel?: string;
message?: string;
primaryButtonLabel?: string;
secondaryButtonLabel?: string;
title: string;
}
// @public
export interface NotificationStyles {
content?: IStackStyles;
icon?: IIconStyles;
link?: IStackStyles;
primaryButton?: IButtonStyles;
root?: IStackStyles;
secondaryButton?: IButtonStyles;
title?: IStackStyles;
}
// @public (undocumented)
export type NotificationTarget = 'assignedBreakoutRoomOpened' | 'assignedBreakoutRoomOpenedPromptJoin' | 'assignedBreakoutRoomChanged' | 'assignedBreakoutRoomClosed' | 'breakoutRoomJoined' | 'breakoutRoomClosingSoon' | 'capabilityTurnVideoOnPresent' | 'capabilityTurnVideoOnAbsent' | 'capabilityUnmuteMicPresent' | 'capabilityUnmuteMicAbsent';
// @public
export type NotificationType = keyof NotificationStackStrings;
// @public
export type OnFetchProfileCallback = (userId: string, defaultProfile?: Profile) => Promise<Profile | undefined>;
// @public
export type OnRenderAvatarCallback = (
userId?: string, options?: CustomAvatarOptions,
defaultOnRender?: (props: CustomAvatarOptions) => JSX.Element) => JSX.Element | undefined;
// @public
export const onResolveDeepNoiseSuppressionDependency: () => Promise<DeepNoiseSuppressionEffectDependency>;
// @public
export const onResolveDeepNoiseSuppressionDependencyLazy: () => Promise<DeepNoiseSuppressionEffectDependency>;
// @public
export const onResolveVideoEffectDependency: () => Promise<VideoBackgroundEffectsDependency>;
// @public
export const onResolveVideoEffectDependencyLazy: () => Promise<VideoBackgroundEffectsDependency>;
// @public
export interface OptimalVideoCountFeatureState {
maxRemoteVideoStreams: number;
}
// @public
export interface OptionsDevice {
id: string;
name: string;
}
// @public
export type OutboundCallCompositeLoaderProps = {
userId: CommunicationUserIdentifier;
credential: CommunicationTokenCredential;
displayName: string;
targetCallees: string[] | StartCallIdentifier[];
callAdapterOptions?: AzureCommunicationCallAdapterOptions;
callCompositeOptions?: CallCompositeOptions;
};
// @public
export type OverflowGalleryPosition = 'horizontalBottom' | 'verticalRight' | 'horizontalTop';
// @public
export interface ParticipantAddedSystemMessage extends SystemMessageCommon {
// (undocumented)
participants: CommunicationParticipant[];
// (undocumented)
systemMessageType: 'participantAdded';
}
// @public
export const ParticipantItem: (props: ParticipantItemProps) => JSX.Element;
// @public
export interface ParticipantItemProps {
ariaLabelledBy?: string;
displayName?: string;
me?: boolean;
menuItems?: IContextualMenuItem[];
onClick?: (props?: ParticipantItemProps) => void;
onRenderAvatar?: OnRenderAvatarCallback;
onRenderIcon?: (props?: ParticipantItemProps) => JSX.Element | null;
participantState?: ParticipantState;
presence?: PersonaPresence;
showParticipantOverflowTooltip?: boolean;
strings?: Partial<ParticipantItemStrings>;
styles?: ParticipantItemStyles;
userId?: string;
}
// @public
export interface ParticipantItemStrings {
attendeeRole: string;
cameraDisabledIconLabel: string;
displayNamePlaceholder?: string;
handRaisedIconLabel?: string;
isMeText: string;
menuTitle: string;
micDisabledIconLabel: string;
mutedIconLabel: string;
participantItemAriaLabel?: string;
participantItemWithMoreOptionsAriaLabel?: string;
participantStateHold?: string;
participantStateRinging?: string;
removeButtonLabel: string;
sharingIconLabel: string;
}
// @public
export interface ParticipantItemStyles extends BaseCustomStyles {
avatar?: IStyle;
iconContainer?: IStyle;
me?: IStyle;
menu?: IStyle;
}
// @public
export const ParticipantList: (props: ParticipantListProps) => JSX.Element;
// @public
export interface ParticipantListItemStyles extends ParticipantItemStyles {
participantSubMenuItemsStyles?: IContextualMenuItemStyles;
}
// @public
export type ParticipantListParticipant = CommunicationParticipant & {
isRemovable: boolean;
};
// @public
export type ParticipantListProps = {
participants: ParticipantListParticipant[];
myUserId?: string;
excludeMe?: boolean;
onRenderParticipant?: (participant: ParticipantListParticipant) => JSX.Element | null;
onRenderAvatar?: OnRenderAvatarCallback;
onRemoveParticipant?: (userId: string) => void;
onFetchParticipantMenuItems?: ParticipantMenuItemsCallback;
onParticipantClick?: (participant?: ParticipantListParticipant) => void;
onMuteParticipant?: (userId: string) => Promise<void>;
styles?: ParticipantListStyles;
showParticipantOverflowTooltip?: boolean;
participantAriaLabelledBy?: string;
pinnedParticipants?: string[];
};
// @public
export type ParticipantListSelector = (state: CallClientState, props: CallingBaseSelectorProps) => {
participants: CallParticipantListParticipant[];
myUserId: string;
};
// @public
export interface ParticipantListStyles extends BaseCustomStyles {
participantItemStyles?: ParticipantListItemStyles;
}
// @public
export type ParticipantMenuItemsCallback = (participantUserId: string, userId?: string, defaultMenuItems?: IContextualMenuItem[]) => IContextualMenuItem[];
// @public
export interface ParticipantRemovedSystemMessage extends SystemMessageCommon {
// (undocumented)
participants: CommunicationParticipant[];
// (undocumented)
systemMessageType: 'participantRemoved';
}
// @public
export type ParticipantsAddedListener = (event: {
participantsAdded: ChatParticipant[];
addedBy: ChatParticipant;
}) => void;
// @public
export const ParticipantsButton: (props: ParticipantsButtonProps) => JSX.Element;
// @public
export interface ParticipantsButtonContextualMenuStyles extends IContextualMenuStyles {
menuItemStyles?: IContextualMenuItemStyles;
participantListStyles?: ParticipantListStyles;
}
// @public
export interface ParticipantsButtonProps extends ControlBarButtonProps {
callInvitationURL?: string;
excludeMe?: boolean;
myUserId?: string;
onFetchParticipantMenuItems?: ParticipantMenuItemsCallback;
onMuteAll?: () => void;
onRemoveParticipant?: (userId: string) => void;
onRenderAvatar?: OnRenderAvatarCallback;
onRenderParticipant?: (participant: CommunicationParticipant) => JSX.Element | null;
onRenderParticipantList?: (props: ParticipantListProps) => JSX.Element | null;
participants: ParticipantListParticipant[];
showParticipantOverflowTooltip?: boolean;
strings?: Partial<ParticipantsButtonStrings>;
styles?: ParticipantsButtonStyles;
}
// @public
export type ParticipantsButtonSelector = (state: CallClientState, props: CallingBaseSelectorProps) => {
participants: CallParticipantListParticipant[];
myUserId: string;
};
// @public
export interface ParticipantsButtonStrings {
ariaLabel?: string;
copyInviteLinkActionedAriaLabel: string;
copyInviteLinkButtonLabel: string;
label: string;
menuHeader: string;
muteAllButtonLabel: string;
participantsListButtonLabel: string;
tooltipContent?: string;
}
// @public
export interface ParticipantsButtonStyles extends ControlBarButtonStyles {
menuStyles?: Partial<ParticipantsButtonContextualMenuStyles>;
}
// @public
export type ParticipantsJoinedListener = (event: {
joined: RemoteParticipant[];
}) => void;
// @public
export type ParticipantsLeftListener = (event: {
removed: RemoteParticipant[];
}) => void;
// @public
export type ParticipantsRemovedListener = (event: {
participantsRemoved: ChatParticipant[];
removedBy: ChatParticipant;
}) => void;
// @public
export type ParticipantState = 'Idle' | 'Connecting' | 'Ringing' | 'Connected' | 'Hold' | 'InLobby' | 'EarlyMedia' | 'Disconnected' | 'Reconnecting';
// @public
export interface PPTLiveCallFeatureState {
isActive: boolean;
}
// @public
export type Profile = {
displayName?: string;
};
// @public
export type RaisedHand = {
raisedHandOrderPosition: number;
};
// @public
export type RaisedHandState = {
raisedHandOrderPosition: number;
};
// @public
export const RaiseHandButton: (props: RaiseHandButtonProps) => JSX.Element;
// @public
export interface RaiseHandButtonProps extends ControlBarButtonProps {
onToggleRaiseHand?: () => Promise<void>;
strings?: Partial<RaiseHandButtonStrings>;
}
// @public
export type RaiseHandButtonSelector = (state: CallClientState, props: CallingBaseSelectorProps) => {
checked?: boolean;
disabled?: boolean;
};
// @public
export interface RaiseHandButtonStrings {
offLabel: string;
onLabel: string;
tooltipDisabledContent?: string;
tooltipOffContent?: string;
tooltipOnContent?: string;
}
// @public
export interface RaiseHandCallFeature {
localParticipantRaisedHand?: RaisedHandState;
raisedHands: RaisedHandState[];
}
// @public
export type Reaction = {
reactionType: string;
receivedOn: Date;
};
// @public
export const ReactionButton: (props: ReactionButtonProps) => JSX.Element;
// @public
export interface ReactionButtonProps extends ControlBarButtonProps {
onReactionClick: (reaction: ReactionButtonReaction) => Promise<void>;
reactionResources: ReactionResources;
strings?: Partial<ReactionButtonStrings>;
}
// @public
export type ReactionButtonReaction = 'like' | 'heart' | 'applause' | 'laugh' | 'surprised';
// @public
export interface ReactionButtonStrings {
applauseReactionTooltipContent?: string;
ariaLabel: string;
heartReactionTooltipContent?: string;
label: string;
laughReactionTooltipContent?: string;
likeReactionTooltipContent?: string;
surprisedReactionTooltipContent?: string;
tooltipContent?: string;
tooltipDisabledContent?: string;
}
// @public
export interface ReactionResources {
applauseReaction?: ReactionSprite;
heartReaction?: ReactionSprite;
laughReaction?: ReactionSprite;
likeReaction?: ReactionSprite;
surprisedReaction?: ReactionSprite;
}
// @public
export type ReactionSprite = {
url: string;
frameCount: number;
};
// @public
export type ReactionState = {
reactionMessage: ReactionMessage;
receivedOn: Date;
};
// @public
export type ReadReceiptsBySenderId = {
[key: string]: {
lastReadMessage: string;
displayName: string;
};
};
// @public
export interface RecordingCallFeature {
isRecordingActive: boolean;
}
// @public
export interface RemoteParticipantState {
callEndReason?: CallEndReason;
contentSharingStream?: HTMLElement;
displayName?: string;
identifier: CommunicationIdentifierKind;
isMuted: boolean;
isSpeaking: boolean;
mediaAccess?: MediaAccessState;
raisedHand?: RaisedHandState;
reactionState?: ReactionState;
role?: ParticipantRole;
spotlight?: SpotlightState;
state: RemoteParticipantState_2;
videoStreams: {
[key: number]: RemoteVideoStreamState;
};
}
// @public
export interface RemoteVideoStreamState {
id: number;
isAvailable: boolean;
isReceiving: boolean;
mediaStreamType: MediaStreamType;
streamSize?: {
width: number;
height: number;
};
view?: VideoStreamRendererViewState;
}
// @public
export interface RemoteVideoTileMenuOptions {
isHidden?: boolean;
}
// @public
export type ResourceDetails = {
threadId: string;
messageId: string;
resourceUrl: string;
};
// @public
export type ResourceFetchResult = {
sourceUrl?: string;
error?: Error;
};
// @public
export const ScreenShareButton: (props: ScreenShareButtonProps) => JSX.Element;
// @public
export interface ScreenShareButtonProps extends ControlBarButtonProps {
onToggleScreenShare?: () => Promise<void>;
strings?: Partial<ScreenShareButtonStrings>;
}
// @public
export type ScreenShareButtonSelector = (state: CallClientState, props: CallingBaseSelectorProps) => {
checked?: boolean;
disabled?: boolean;
};
// @public
export interface ScreenShareButtonStrings {
offLabel: string;
onLabel: string;
tooltipDisabledContent?: string;
tooltipOffContent?: string;
tooltipOnContent?: string;
}
// @public
export type Selector = (state: ClientState, props: any) => any;
// @public
export const SendBox: (props: SendBoxProps) => JSX.Element;
// @public
export interface SendBoxProps {
autoFocus?: 'sendBoxTextField';
disabled?: boolean;
onRenderIcon?: (isHover: boolean) => JSX.Element;
onRenderSystemMessage?: (systemMessage: string | undefined) => React_2.ReactElement;
onSendMessage?: (content: string) => Promise<void>;
onTyping?: () => Promise<void>;
strings?: Partial<SendBoxStrings>;
styles?: SendBoxStylesProps;
supportNewline?: boolean;
systemMessage?: string;
}
// @public
export type SendBoxSelector = (state: ChatClientState, props: ChatBaseSelectorProps) => {
displayName: string;
userId: string;
};
// @public
export interface SendBoxStrings {
placeholderText: string;
sendButtonAriaLabel: string;
textTooLong: string;
}
// @public
export interface SendBoxStylesProps extends BaseCustomStyles {
sendMessageIcon?: IStyle;
sendMessageIconContainer?: IStyle;
systemMessage?: IStyle;
textField?: IStyle;
textFieldContainer?: IStyle;
}
// @public
export type SoundEffect = {
url: string;
};
// @public
export interface SpokenLanguageStrings {
// (undocumented)
'ar-ae': string;
// (undocumented)
'ar-sa': string;
// (undocumented)
'cs-cz': string;
// (undocumented)
'cy-gb': string;
// (undocumented)
'da-dk': string;
// (undocumented)
'de-de': string;
// (undocumented)
'el-gr': string;
// (undocumented)
'en-au': string;
// (undocumented)
'en-ca': string;
// (undocumented)
'en-gb': string;
// (undocumented)
'en-in': string;
// (undocumented)
'en-nz': string;
// (undocumented)
'en-us': string;
// (undocumented)
'es-es': string;
// (undocumented)
'es-mx': string;
// (undocumented)
'fi-fi': string;
// (undocumented)
'fr-ca': string;
// (undocumented)
'fr-fr': string;
// (undocumented)
'he-il': string;
// (undocumented)
'hi-in': string;
// (undocumented)
'hu-hu': string;
// (undocumented)
'it-it': string;
// (undocumented)
'ja-jp': string;
// (undocumented)
'ko-kr': string;
// (undocumented)
'nb-no': string;
// (undocumented)
'nl-be': string;
// (undocumented)
'nl-nl': string;
// (undocumented)
'pl-pl': string;
// (undocumented)
'pt-br': string;
// (undocumented)
'pt-pt': string;
// (undocumented)
'ro-ro': string;
// (undocumented)
'ru-ru': string;
// (undocumented)
'sk-sk': string;
// (undocumented)
'sv-se': string;
// (undocumented)
'th-th': string;
// (undocumented)
'tr-tr': string;
// (undocumented)
'uk-ua': string;
// (undocumented)
'vi-vn': string;
// (undocumented)
'zh-cn': string;
// (undocumented)
'zh-hk': string;
// (undocumented)
'zh-tw': string;
}
// @public
export type Spotlight = {
spotlightedOrderPosition?: number;
};
// @public
export interface SpotlightCallFeatureState {
localParticipantSpotlight?: SpotlightState;
maxParticipantsToSpotlight: number;
spotlightedParticipants: SpotlightedParticipant[];
}
// @public
export type SpotlightChangedListener = (args: {
added: SpotlightedParticipant[];
removed: SpotlightedParticipant[];
}) => void;
// @public
export interface SpotlightPromptStrings {
closeSpotlightPromptButtonLabel: string;
startSpotlightCancelButtonLabel: string;
startSpotlightConfirmButtonLabel: string;
startSpotlightHeading: string;
startSpotlightOnSelfText: string;
startSpotlightText: string;
stopAllSpotlightHeading: string;
stopAllSpotlightText: string;
stopSpotlightCancelButtonLabel: string;
stopSpotlightConfirmButtonLabel: string;
stopSpotlightHeading: string;
stopSpotlightOnSelfConfirmButtonLabel: string;
stopSpotlightOnSelfHeading: string;
stopSpotlightOnSelfText: string;
stopSpotlightText: string;
}
// @public
export interface SpotlightState {
spotlightedOrderPosition?: number;
}
// @public
export type StartCallIdentifier = CommunicationIdentifier;
// @public
export interface StartCaptionsAdapterOptions extends StartCaptionsOptions {
startInBackground?: boolean;
}
// @public
export const StartCaptionsButton: (props: StartCaptionsButtonProps) => JSX.Element;
// @public (undocumented)
export interface StartCaptionsButtonProps extends ControlBarButtonProps {
currentSpokenLanguage: string;
onSetSpokenLanguage: (language: string) => Promise<void>;
onStartCaptions: (options?: CaptionsOptions) => Promise<void>;
onStopCaptions: () => Promise<void>;
strings?: StartCaptionsButtonStrings;
}
// @public
export type StartCaptionsButtonSelector = (state: CallClientState, props: CallingBaseSelectorProps) => {
checked: boolean;
currentCaptionLanguage: string;
currentSpokenLanguage: string;
};
// @public
export interface StartCaptionsButtonStrings {
offLabel: string;
onLabel: string;
tooltipOffContent: string;
tooltipOnContent: string;
}
// @public
export interface StatefulCallClient extends CallClient {
createCallAgent(...args: Parameters<CallClient['createCallAgent']>): Promise<DeclarativeCallAgent>;
createTeamsCallAgent(...args: Parameters<CallClient['createTeamsCallAgent']>): Promise<DeclarativeTeamsCallAgent>;
createView(callId: string | undefined, participantId: CommunicationIdentifier | undefined, stream: LocalVideoStreamState | RemoteVideoStreamState, options?: CreateViewOptions): Promise<CreateViewResult | undefined>;
disposeView(callId: string | undefined, participantId: CommunicationIdentifier | undefined, stream: LocalVideoStreamState | RemoteVideoStreamState): void;
getState(): CallClientState;
offStateChange(handler: (state: CallClientState) => void): void;
onStateChange(handler: (state: CallClientState) => void): void;
}
// @public
export type StatefulCallClientArgs = {
userId: CommunicationUserIdentifier | MicrosoftTeamsUserIdentifier;
};
// @public
export type StatefulCallClientOptions = {
callClientOptions: CallClientOptions;
maxStateChangeListeners?: number;
};
// @public
export interface StatefulChatClient extends ChatClient {
dispose(): void;
downloadResourceToCache(threadId: string, messageId: string, resourceUrl: string): void;
getState(): ChatClientState;
offStateChange(handler: (state: ChatClientState) => void): void;
onStateChange(handler: (state: ChatClientState) => void): void;
removeResourceFromCache(threadId: string, messageId: string, resourceUrl: string): void;
}
// @public
export type StatefulChatClientArgs = {
userId: CommunicationUserIdentifier;
displayName: string;
endpoint: string;
credential: CommunicationTokenCredential;
};
// @public
export type StatefulChatClientOptions = {
chatClientOptions: ChatClientOptions;
maxStateChangeListeners?: number;
};
// @public
export interface StatefulDeviceManager extends DeviceManager {
getUnparentedVideoStreams: () => LocalVideoStream[];
selectCamera: (device: VideoDeviceInfo) => void;
}
// @public
export interface StopCaptionsAdapterOptions {
stopInBackground?: boolean;
}
// @public
export const StreamMedia: (props: StreamMediaProps) => JSX.Element;
// @public
export interface StreamMediaProps {
isMirrored?: boolean;
loadingState?: LoadingState;
styles?: BaseCustomStyles;
videoStreamElement: HTMLElement | null;
}
// @public (undocumented)
export type SupportedCaptionLanguage = keyof CaptionLanguageStrings;
// @public (undocumented)
export type SupportedSpokenLanguage = keyof SpokenLanguageStrings;
// @public
export interface SurveyIssues {
// (undocumented)
audioRating: {
noLocalAudio: string;
noRemoteAudio: string;
echo: string;
audioNoise: string;
lowVolume: string;
audioStoppedUnexpectedly: string;
distortedSpeech: string;
audioInterruption: string;
otherIssues: string;
};
// (undocumented)
overallRating: {
callCannotJoin: string;
callCannotInvite: string;
hadToRejoin: string;
callEndedUnexpectedly: string;
otherIssues: string;
};
// (undocumented)
screenshareRating: {
noContentLocal: string;
noContentRemote: string;
cannotPresent: string;
lowQuality: string;
freezes: string;
stoppedUnexpectedly: string;
largeDelay: string;
otherIssues: string;
};
// (undocumented)
videoRating: {
noVideoReceived: string;
noVideoSent: string;
lowQuality: string;
freezes: string;
stoppedUnexpectedly: string;
darkVideoReceived: string;
audioVideoOutOfSync: string;
otherIssues: string;
};
}
// @public
export interface SurveyIssuesHeadingStrings {
// (undocumented)
audioRating: string;
// (undocumented)
overallRating: string;
// (undocumented)
screenshareRating: string;
// (undocumented)
videoRating: string;
}
// @public
export type SystemMessage = ParticipantAddedSystemMessage | ParticipantRemovedSystemMessage | TopicUpdatedSystemMessage | ContentSystemMessage;
// @public
export interface SystemMessageCommon extends MessageCommon {
// (undocumented)
iconName: string;
// (undocumented)
messageType: 'system';
}
// @public
export type TeamsAdapterOptions = CommonCallAdapterOptions;
// @public
export interface TeamsCallAdapter extends CommonCallAdapter {
// @deprecated
joinCall(microphoneOn?: boolean): TeamsCall | undefined;
joinCall(options?: JoinCallOptions): TeamsCall | undefined;
startCall(participants: string[], options?: StartCallOptions): TeamsCall | undefined;
startCall(participants: StartCallIdentifier[], options?: StartCallOptions): TeamsCall | undefined;
}
// @public
export type TeamsCallAdapterArgs = TeamsCallAdapterArgsCommon & {
locator: TeamsMeetingLinkLocator | TeamsMeetingIdLocator;
};
// @public
export type TeamsCallAdapterArgsCommon = {
userId: MicrosoftTeamsUserIdentifier;
credential: CommunicationTokenCredential;
options?: TeamsAdapterOptions;
};
// @public
export interface TeamsCallingHandlers extends CommonCallingHandlers {
// (undocumented)
onStartCall: (participants: CommunicationIdentifier[], options?: StartCallOptions) => undefined | TeamsCall;
}
// @public
export type TeamsIncomingCallManagement = {
incomingCalls: ReadonlyArray<TeamsIncomingCall>;
};
// @public
export interface TeamsIncomingCallState {
callEndReason?: CallEndReason;
callerInfo: CallerInfo;
endTime?: Date;
id: string;
info: CallInfoState;
startTime: Date;
}
// @public
export const toFlatCommunicationIdentifier: (identifier: CommunicationIdentifier) => string;
// @public
export type TopicChangedListener = (event: {
topic: string;
}) => void;
// @public
export interface TopicUpdatedSystemMessage extends SystemMessageCommon {
// (undocumented)
systemMessageType: 'topicUpdated';
// (undocumented)
topic: string;
}
// @public
export interface TranscriptionCallFeature {
isTranscriptionActive: boolean;
}
// @public
export type TransferAcceptedListener = (event: TransferEventArgs) => void;
// @public
export interface TransferFeature {
acceptedTransfers: {
[key: string]: AcceptedTransfer;
};
}
// @public
export const TypingIndicator: (props: TypingIndicatorProps) => JSX.Element;
// @public
export interface TypingIndicatorProps {
onRenderUser?: (users: CommunicationParticipant) => JSX.Element;
strings?: Partial<TypingIndicatorStrings>;
styles?: TypingIndicatorStylesProps;
typingUsers: CommunicationParticipant[];
}
// @public
export type TypingIndicatorSelector = (state: ChatClientState, props: ChatBaseSelectorProps) => {
typingUsers: CommunicationParticipant[];
};
// @public
export interface TypingIndicatorStrings {
delimiter: string;
multipleUsers: string;
multipleUsersAbbreviateMany: string;
multipleUsersAbbreviateOne: string;
singleUser: string;
}
// @public
export interface TypingIndicatorStylesProps extends BaseCustomStyles {
typingString?: IStyle;
typingUserDisplayName?: IStyle;
}
// @public
export type UpdateMessageCallback = (messageId: string, content: string) => Promise<void>;
// @public
export const useAzureCommunicationCallAdapter: (args: Partial<AzureCommunicationCallAdapterArgs | AzureCommunicationOutboundCallAdapterArgs>, afterCreate?: (adapter: CallAdapter) => Promise<CallAdapter>, beforeDispose?: (adapter: CallAdapter) => Promise<void>) => CallAdapter | undefined;
// @public
export const useAzureCommunicationCallWithChatAdapter: (args: Partial<AzureCommunicationCallWithChatAdapterArgs>, afterCreate?: (adapter: CallWithChatAdapter) => Promise<CallWithChatAdapter>, beforeDispose?: (adapter: CallWithChatAdapter) => Promise<void>) => CallWithChatAdapter | undefined;
// @public
export const useAzureCommunicationChatAdapter: (args: Partial<AzureCommunicationChatAdapterArgs>, afterCreate?: (adapter: ChatAdapter) => Promise<ChatAdapter>, beforeDispose?: (adapter: ChatAdapter) => Promise<void>) => ChatAdapter | undefined;
// @public
export const useCall: () => Call | undefined;
// @public
export const useCallAgent: () => CallAgent | undefined;
// @public
export const useCallClient: () => StatefulCallClient;
// @public
export const useChatClient: () => StatefulChatClient;
// @public
export const useChatThreadClient: () => ChatThreadClient;
// @public
export const useDeviceManager: () => StatefulDeviceManager | undefined;
// @public
export const usePropsFor: <Component extends (props: any) => JSX.Element>(component: Component, type?: 'calling' | 'chat') => ComponentProps<Component>;
// @public
export const useSelector: <ParamT extends Selector | undefined>(selector: ParamT, selectorProps?: ParamT extends Selector ? Parameters<ParamT>[1] : undefined, type?: 'calling' | 'chat') => ParamT extends Selector ? ReturnType<ParamT> : undefined;
// @public
export const useTeamsCall: () => undefined | TeamsCall;
// @public
export const useTeamsCallAdapter: (args: Partial<TeamsCallAdapterArgs>, afterCreate?: (adapter: TeamsCallAdapter) => Promise<TeamsCallAdapter>, beforeDispose?: (adapter: TeamsCallAdapter) => Promise<void>) => TeamsCallAdapter | undefined;
// @public
export const useTeamsCallAgent: () => undefined | TeamsCallAgent;
// @public
export const useTheme: () => Theme;
// @public
export interface VerticalGalleryControlBarStyles extends BaseCustomStyles {
counter?: IStyle;
nextButton?: IStyle;
previousButton?: IStyle;
}
// @public
export interface VerticalGalleryStrings {
leftNavButtonAriaLabel?: string;
rightNavButtonAriaLabel?: string;
}
// @public
export interface VerticalGalleryStyles extends BaseCustomStyles {
children?: IStyle;
controlBar?: VerticalGalleryControlBarStyles;
}
// @public
export interface VideoBackgroundBlurEffect extends BackgroundBlurConfig {
effectName: 'blur';
}
// @public
export type VideoBackgroundEffect = VideoBackgroundNoEffect | VideoBackgroundBlurEffect | VideoBackgroundReplacementEffect;
// @public
export type VideoBackgroundEffectsDependency = {
createBackgroundBlurEffect: (config?: BackgroundBlurConfig) => BackgroundBlurEffect;
createBackgroundReplacementEffect: (config: BackgroundReplacementConfig) => BackgroundReplacementEffect;
};
// @public
export interface VideoBackgroundImage {
key: string;
tooltipText?: string;
url: string;
}
// @public
export interface VideoBackgroundNoEffect {
effectName: 'none';
}
// @public
export interface VideoBackgroundReplacementEffect extends BackgroundReplacementConfig {
effectName: 'replacement';
key?: string;
}
// @public
export const VideoGallery: (props: VideoGalleryProps) => JSX.Element;
// @public (undocumented)
export type VideoGalleryLayout = 'default' | 'floatingLocalVideo' | 'speaker' | 'focusedContent';
// @public
export interface VideoGalleryLocalParticipant extends VideoGalleryParticipant {
raisedHand?: RaisedHand;
reaction?: Reaction;
screenShareStream?: VideoGalleryStream;
}
// @public
export type VideoGalleryParticipant = {
userId: string;
isMuted?: boolean;
displayName?: string;
videoStream?: VideoGalleryStream;
isScreenSharingOn?: boolean;
spotlight?: Spotlight;
mediaAccess?: MediaAccess;
canAudioBeForbidden?: boolean;
canVideoBeForbidden?: boolean;
};
// @public
export interface VideoGalleryProps {
dominantSpeakers?: string[];
layout?: VideoGalleryLayout;
localParticipant: VideoGalleryLocalParticipant;
localVideoCameraCycleButtonProps?: LocalVideoCameraCycleButtonProps;
localVideoTileSize?: LocalVideoTileSize;
localVideoViewOptions?: VideoStreamOptions;
maxParticipantsToSpotlight?: number;
maxRemoteVideoStreams?: number;
onCreateLocalStreamView?: (options?: VideoStreamOptions) => Promise<void | CreateVideoStreamViewResult>;
onCreateRemoteStreamView?: (userId: string, options?: VideoStreamOptions) => Promise<void | CreateVideoStreamViewResult>;
onDisposeLocalScreenShareStreamView?: () => Promise<void>;
onDisposeLocalStreamView?: () => void;
onDisposeRemoteScreenShareStreamView?: (userId: string) => Promise<void>;
// @deprecated (undocumented)
onDisposeRemoteStreamView?: (userId: string) => Promise<void>;
onDisposeRemoteVideoStreamView?: (userId: string) => Promise<void>;
onForbidAudio?: (userIds: string[]) => Promise<void>;
onForbidVideo?: (userIds: string[]) => Promise<void>;
onMuteParticipant?: (userId: string) => Promise<void>;
onPermitAudio?: (userIds: string[]) => Promise<void>;
onPermitVideo?: (userIds: string[]) => Promise<void>;
onPinParticipant?: (userId: string) => void;
onRenderAvatar?: OnRenderAvatarCallback;
onRenderLocalVideoTile?: (localParticipant: VideoGalleryLocalParticipant) => JSX.Element;
onRenderRemoteVideoTile?: (remoteParticipant: VideoGalleryRemoteParticipant) => JSX.Element;
onStartLocalSpotlight?: () => Promise<void>;
onStartRemoteSpotlight?: (userIds: string[]) => Promise<void>;
onStopLocalSpotlight?: () => Promise<void>;
onStopRemoteSpotlight?: (userIds: string[]) => Promise<void>;
onUnpinParticipant?: (userId: string) => void;
overflowGalleryPosition?: OverflowGalleryPosition;
pinnedParticipants?: string[];
reactionResources?: ReactionResources;
remoteParticipants?: VideoGalleryRemoteParticipant[];
remoteVideoTileMenu?: false | VideoTileContextualMenuProps | VideoTileDrawerMenuProps;
remoteVideoViewOptions?: VideoStreamOptions;
showCameraSwitcherInLocalPreview?: boolean;
showMuteIndicator?: boolean;
spotlightedParticipants?: string[];
strings?: Partial<VideoGalleryStrings>;
styles?: VideoGalleryStyles;
videoTilesOptions?: VideoTilesOptions;
}
// @public
export interface VideoGalleryRemoteParticipant extends VideoGalleryParticipant {
isSpeaking?: boolean;
mediaAccess?: MediaAccess;
raisedHand?: RaisedHand;
reaction?: Reaction;
screenShareStream?: VideoGalleryStream;
state?: ParticipantState;
}
// @public
export type VideoGallerySelector = (state: CallClientState, props: CallingBaseSelectorProps) => {
screenShareParticipant?: VideoGalleryRemoteParticipant;
localParticipant: VideoGalleryLocalParticipant;
remoteParticipants: VideoGalleryRemoteParticipant[];
dominantSpeakers?: string[];
optimalVideoCount?: number;
spotlightedParticipants?: string[];
maxParticipantsToSpotlight?: number;
};
// @public
export interface VideoGalleryStream {
id?: number;
isAvailable?: boolean;
isMirrored?: boolean;
isReceiving?: boolean;
renderElement?: HTMLElement;
scalingMode?: ViewScalingMode;
streamSize?: {
width: number;
height: number;
};
}
// @public
export interface VideoGalleryStrings {
addSpotlightVideoTileMenuLabel: string;
attendeeRole: string;
displayNamePlaceholder: string;
fillRemoteParticipantFrame: string;
fitRemoteParticipantToFrame: string;
localScreenShareLoadingMessage: string;
localVideoCameraSwitcherLabel: string;
localVideoLabel: string;
localVideoMovementAriaLabel: string;
localVideoMovementLabel: string;
localVideoSelectedDescription: string;
muteParticipantMenuItemLabel: string;
pinnedParticipantAnnouncementAriaLabel: string;
pinParticipantForMe: string;
pinParticipantMenuItemAriaLabel: string;
screenIsBeingSharedMessage: string;
screenShareLoadingMessage: string;
spotlightLimitReachedMenuTitle: string;
startSpotlightVideoTileMenuLabel: string;
stopSpotlightOnSelfVideoTileMenuLabel: string;
stopSpotlightVideoTileMenuLabel: string;
unpinnedParticipantAnnouncementAriaLabel: string;
unpinParticipantForMe: string;
unpinParticipantMenuItemAriaLabel: string;
waitingScreenText: string;
}
// @public
export interface VideoGalleryStyles extends BaseCustomStyles {
gridLayout?: GridLayoutStyles;
horizontalGallery?: HorizontalGalleryStyles;
localVideo?: IStyle;
verticalGallery?: VerticalGalleryStyles;
}
// @public
export interface VideoStreamOptions {
isMirrored?: boolean;
scalingMode?: ViewScalingMode;
}
// @public
export interface VideoStreamRendererViewState {
isMirrored: boolean;
scalingMode: ScalingMode;
target: HTMLElement;
}
// @public
export const VideoTile: (props: VideoTileProps) => JSX.Element;
// @public
export interface VideoTileContextualMenuProps {
kind: 'contextual';
}
// @public
export interface VideoTileDrawerMenuProps {
hostId?: string;
kind: 'drawer';
}
// @public
export interface VideoTileProps {
alwaysShowLabelBackground?: boolean;
children?: React_2.ReactNode;
contextualMenu?: IContextualMenuProps;
displayName?: string;
initialsName?: string;
isMirrored?: boolean;
isMuted?: boolean;
isPinned?: boolean;
isSpeaking?: boolean;
isSpotlighted?: boolean;
mediaAccess?: MediaAccess;
noVideoAvailableAriaLabel?: string;
onLongTouch?: () => void;
onRenderPlaceholder?: OnRenderAvatarCallback;
overlay?: JSX.Element | null;
participantState?: ParticipantState;
personaMaxSize?: number;
personaMinSize?: number;
raisedHand?: RaisedHand;
reactionResources?: ReactionResources;
renderElement?: JSX.Element | null;
showLabel?: boolean;
showMuteIndicator?: boolean;
strings?: VideoTileStrings;
styles?: VideoTileStylesProps;
userId?: string;
}
// @public
export interface VideoTilesOptions {
alwaysShowLabelBackground?: boolean;
}
// @public
export interface VideoTileStrings {
moreOptionsButtonAriaLabel: string;
moreOptionsParticipantCameraDisabledAriaLabel: string;
moreOptionsParticipantHandRaisedAriaLabel: string;
moreOptionsParticipantIsSpeakingAriaLabel: string;
moreOptionsParticipantMicDisabledAriaLabel: string;
moreOptionsParticipantMutedStateMutedAriaLabel: string;
moreOptionsParticipantMutedStateUnmutedAriaLabel: string;
participantStateHold: string;
participantStateRinging: string;
}
// @public
export interface VideoTileStylesProps extends BaseCustomStyles {
displayNameContainer?: IStyle;
overlayContainer?: IStyle;
videoContainer?: IStyle;
}
// @public
export type ViewScalingMode = 'Stretch' | 'Crop' | 'Fit';
// (No @packageDocumentation comment for this package)