Do not edit this file. It is a report generated by API Extractor.
/// <reference types="react" />
import { AddPhoneNumberOptions } from '@azure/communication-calling';
import { AttachmentDownloadResult } from '@internal/react-components';
import { AttachmentMetadata } from '@internal/react-components';
import { AudioDeviceInfo } from '@azure/communication-calling';
import type { BackgroundBlurConfig } from '@azure/communication-calling';
import type { BackgroundReplacementConfig } from '@azure/communication-calling';
import { Call } from '@azure/communication-calling';
import { CallAgent } from '@azure/communication-calling';
import { CallState } from '@internal/calling-stateful-client';
import { CallSurvey } from '@azure/communication-calling';
import { CallSurveyImprovementSuggestions } from '@internal/react-components';
import { CallSurveyResponse } from '@azure/communication-calling';
import type { CapabilitiesChangeInfo } from '@azure/communication-calling';
import { CaptionLanguageStrings } from '@internal/react-components';
import { CaptionsInfo } from '@internal/calling-stateful-client';
import type { ChatMessage } from '@azure/communication-chat';
import { ChatParticipant } from '@azure/communication-chat';
import { ChatThreadClient } from '@azure/communication-chat';
import { ChatThreadClientState } from '@internal/chat-stateful-client';
import { CommunicationIdentifier } from '@azure/communication-common';
import { CommunicationIdentifierKind } from '@azure/communication-common';
import { CommunicationParticipant } from '@internal/react-components';
import { CommunicationTokenCredential } from '@azure/communication-common';
import { CommunicationUserIdentifier } from '@azure/communication-common';
import type { CommunicationUserKind } from '@azure/communication-common';
import { ComponentLocale } from '@internal/react-components';
import { CreateVideoStreamViewResult } from '@internal/react-components';
import { DeviceManagerState } from '@internal/calling-stateful-client';
import { DtmfTone } from '@azure/communication-calling';
import { EnvironmentInfo } from '@azure/communication-calling';
import { FileDownloadHandler } from '@internal/react-components';
import type { FileMetadata } from '@internal/react-components';
import { GroupCallLocator } from '@azure/communication-calling';
import type { MediaDiagnosticChangedEventArgs } from '@azure/communication-calling';
import { MessageProps } from '@internal/react-components';
import { MessageRenderer } from '@internal/react-components';
import { MicrosoftTeamsUserIdentifier } from '@azure/communication-common';
import { Model } from '@internal/fake-backends';
import type { NetworkDiagnosticChangedEventArgs } from '@azure/communication-calling';
import { PartialTheme } from '@fluentui/react';
import { ParticipantMenuItemsCallback } from '@internal/react-components';
import { ParticipantRole } from '@azure/communication-calling';
import { PermissionConstraints } from '@azure/communication-calling';
import { PersonaInitialsColor } from '@fluentui/react';
import { PhoneNumberIdentifier } from '@azure/communication-common';
import { PropertyChangedEvent } from '@azure/communication-calling';
import { default as React_2 } from 'react';
import { Reaction } from '@azure/communication-calling';
import type { RemoteParticipant } from '@azure/communication-calling';
import { RoomCallLocator } from '@azure/communication-calling';
import { SendMessageOptions } from '@azure/communication-chat';
import { SpokenLanguageStrings } from '@internal/react-components';
import { StartCallOptions } from '@azure/communication-calling';
import { StartCaptionsOptions } from '@azure/communication-calling';
import { StatefulCallClient } from '@internal/calling-stateful-client';
import { StatefulChatClient } from '@internal/chat-stateful-client';
import { SurveyIssues } from '@internal/react-components';
import { SurveyIssuesHeadingStrings } from '@internal/react-components';
import { TeamsCall } from '@azure/communication-calling';
import { TeamsCallAgent } from '@azure/communication-calling';
import { TeamsMeetingLinkLocator } from '@azure/communication-calling';
import { _TelemetryImplementationHint } from '@internal/acs-ui-common';
import { Theme } from '@fluentui/react';
import { TransferRequestedEventArgs } from '@azure/communication-calling';
import { VideoBackgroundEffectsDependency } from '@internal/calling-component-bindings';
import { VideoDeviceInfo } from '@azure/communication-calling';
import { VideoGalleryLayout } from '@internal/react-components';
import { VideoStreamOptions } from '@internal/react-components';
// @public
export interface AdapterError extends Error {
innerError: Error;
target: string;
timestamp: Date;
}
// @public
export type AdapterErrors = {
[target: string]: AdapterError;
};
// @public
export interface AdapterState<TState> {
getState(): TState;
offStateChange(handler: (state: TState) => void): void;
onStateChange(handler: (state: TState) => void): void;
}
// @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;
alternateCallerId?: string;
options?: AzureCommunicationCallAdapterOptions;
};
// @public
export type AzureCommunicationCallAdapterOptions = CommonCallAdapterOptions;
// @public
export type AzureCommunicationCallWithChatAdapterArgs = {
endpoint: string;
userId: CommunicationUserIdentifier;
displayName: string;
credential: CommunicationTokenCredential;
locator: CallAndChatLocator | TeamsMeetingLinkLocator;
alternateCallerId?: string;
callAdapterOptions?: AzureCommunicationCallAdapterOptions;
};
// @public
export type AzureCommunicationCallWithChatAdapterFromClientArgs = {
callLocator: CallAdapterLocator | TeamsMeetingLinkLocator;
callAgent: CallAgent;
callClient: StatefulCallClient;
chatClient: StatefulChatClient;
chatThreadClient: ChatThreadClient;
callAdapterOptions?: AzureCommunicationCallAdapterOptions;
chatAdapterOptions?: AzureCommunicationChatAdapterOptions;
};
// @public
export type AzureCommunicationChatAdapterArgs = {
endpoint: string;
userId: CommunicationUserIdentifier;
displayName: string;
credential: CommunicationTokenCredential;
threadId: string;
};
// @beta
export type AzureCommunicationChatAdapterOptions = {
credential?: CommunicationTokenCredential;
};
// @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 CallAdapter extends CommonCallAdapter {
// @deprecated
joinCall(microphoneOn?: boolean): Call | undefined;
joinCall(options?: JoinCallOptions): Call | undefined;
startCall(participants: string[], options?: StartCallOptions): Call | undefined;
// @beta
startCall(participants: CommunicationIdentifier[], options?: StartCallOptions): Call | undefined;
}
// @public
export type CallAdapterCallEndedEvent = {
callId: string;
};
// @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;
// @beta
startCall(participants: CommunicationIdentifier[], options?: StartCallOptions): Call | undefined;
}
// @public
export interface CallAdapterCallOperations {
// @beta
addParticipant(participant: PhoneNumberIdentifier, options?: AddPhoneNumberOptions): Promise<void>;
// (undocumented)
addParticipant(participant: CommunicationUserIdentifier): Promise<void>;
allowUnsupportedBrowserVersion(): 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>;
// @beta
holdCall(): Promise<void>;
leaveCall(forEveryone?: boolean): Promise<void>;
lowerHand(): Promise<void>;
mute(): Promise<void>;
// @beta
onReactionClicked(reaction: Reaction): Promise<void>;
raiseHand(): Promise<void>;
removeParticipant(userId: string): Promise<void>;
// @beta
removeParticipant(participant: CommunicationIdentifier): Promise<void>;
// @beta
resumeCall(): Promise<void>;
// @beta
sendDtmfTone(dtmfTone: DtmfTone): Promise<void>;
setCaptionLanguage(language: string): Promise<void>;
setSpokenLanguage(language: string): Promise<void>;
startCamera(options?: VideoStreamOptions): Promise<void>;
startCaptions(options?: StartCaptionsOptions): Promise<void>;
startScreenShare(): Promise<void>;
// @beta
startSpotlight(userId: string): Promise<void>;
startVideoBackgroundEffect(videoBackgroundEffect: VideoBackgroundEffect): Promise<void>;
stopCamera(): Promise<void>;
stopCaptions(): Promise<void>;
stopScreenShare(): Promise<void>;
// @beta
stopSpotlight(userId: string): Promise<void>;
stopVideoBackgroundEffects(): Promise<void>;
// @beta
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;
isRoomsCall: boolean;
latestErrors: AdapterErrors;
alternateCallerId?: string;
environmentInfo?: EnvironmentInfo;
cameraStatus?: 'On' | 'Off';
videoBackgroundImages?: VideoBackgroundImage[];
onResolveVideoEffectDependency?: () => Promise<VideoBackgroundEffectsDependency>;
selectedVideoBackgroundEffect?: VideoBackgroundEffect;
acceptedTransferCallState?: CallState;
hideAttendeeNames?: boolean;
sounds?: CallingSounds;
};
// @public
export interface CallAdapterDeviceManagement {
askDevicePermission(constrain: PermissionConstraints): Promise<void>;
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 | /* @conditional-compile-remove(rooms) */ RoomCallLocator | /* @conditional-compile-remove(teams-adhoc-call) */ /* @conditional-compile-remove(PSTN-calls) */ CallParticipantsLocator;
// @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: 'transferRequested', listener: TransferRequestedListener): void;
off(event: 'capabilitiesChanged', listener: CapabilitiesChangedListener): void;
off(event: 'roleChanged', listener: PropertyChangedEvent): 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: 'transferRequested', listener: TransferRequestedListener): void;
on(event: 'capabilitiesChanged', listener: CapabilitiesChangedListener): void;
on(event: 'roleChanged', listener: PropertyChangedEvent): void;
}
// @public
export type CallAdapterUiState = {
isLocalPreviewMicrophoneEnabled: boolean;
page: CallCompositePage;
unsupportedBrowserVersionsAllowed?: boolean;
};
// @public
export interface CallAndChatLocator {
callLocator: GroupCallLocator | /* @conditional-compile-remove(teams-adhoc-call) */ CallParticipantsLocator;
chatThreadId: string;
}
// @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;
ControlButtonMicProhibited?: JSX.Element;
ControlButtonRaiseHand?: JSX.Element;
ControlButtonLowerHand?: 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;
};
// @public
export type CallCompositeOptions = {
errorBar?: boolean;
callControls?: boolean | CallControlOptions;
deviceChecks?: DeviceCheckOptions;
onPermissionsTroubleshootingClick?: (permissionsState: {
camera: PermissionState;
microphone: PermissionState;
}) => void;
onNetworkingTroubleShootingClick?: () => void;
onEnvironmentInfoTroubleshootingClick?: () => void;
remoteVideoTileMenuOptions?: RemoteVideoTileMenuOptions;
localVideoTile?: boolean | LocalVideoTileOptions;
galleryOptions?: {
layout?: VideoGalleryLayout;
};
surveyOptions?: {
disableSurvey?: boolean;
onSurveyDismissed?: () => void;
onSurveySubmitted?: (callId: string, surveyId: string,
submittedSurvey: CallSurvey,
improvementSuggestions: CallSurveyImprovementSuggestions) => Promise<void>;
};
branding?: {
logo?: {
url: string;
alt?: string;
shape?: 'unset' | 'circle';
};
backgroundImage?: {
url: string;
};
};
};
// @public
export type CallCompositePage = 'accessDeniedTeamsMeeting' | 'call' | 'configuration' | /* @conditional-compile-remove(PSTN-calls) */ 'hold' | 'joinCallFailedDueToNoNetwork' | 'leftCall' | 'leaving' | 'lobby' | 'removedFromCall' | /* @conditional-compile-remove(unsupported-browser) */ 'unsupportedEnvironment' | /* @conditional-compile-remove(call-transfer) */ 'transferring';
// @public
export interface CallCompositeProps extends BaseCompositeProps<CallCompositeIcons> {
adapter: CommonCallAdapter;
callInvitationUrl?: string;
formFactor?: 'desktop' | 'mobile';
options?: CallCompositeOptions;
}
// @public
export interface CallCompositeStrings {
blurBackgroundEffectButtonLabel?: string;
blurBackgroundTooltip?: string;
callRejectedMoreDetails?: string;
callRejectedTitle?: 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;
configurationPageTitle: string;
configurationPageVideoEffectsButtonLabel?: string;
copyInviteLinkActionedAriaLabel: string;
copyInviteLinkButtonLabel: string;
defaultPlaceHolder: string;
dialpadCloseModalButtonAriaLabel: string;
dialpadModalAriaLabel: string;
dialpadModalTitle: string;
dialpadStartCallButtonLabel: string;
dismissModalAriaLabel?: string;
dismissSidePaneButtonLabel?: string;
dtmfDialpadPlaceholderText: string;
failedToJoinCallDueToNoNetworkMoreDetails?: string;
failedToJoinCallDueToNoNetworkTitle: string;
failedToJoinTeamsMeetingReasonAccessDeniedMoreDetails?: string;
failedToJoinTeamsMeetingReasonAccessDeniedTitle: string;
holdScreenLabel: string;
inviteToRoomRemovedDetails?: string;
inviteToRoomRemovedTitle: string;
learnMore: 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;
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;
peoplePaneSubTitle: string;
peoplePaneTitle: string;
permissionToReachTargetParticipantNotAllowedMoreDetails?: string;
permissionToReachTargetParticipantNotAllowedTitle?: string;
privacyPolicy: string;
rejoinCallButtonLabel: string;
removeBackgroundEffectButtonLabel?: string;
removeBackgroundTooltip?: string;
removedFromCallMoreDetails?: string;
removedFromCallTitle: string;
removeMenuLabel: string;
resumeCallButtonAriaLabel: string;
resumeCallButtonLabel: string;
resumingCallButtonAriaLabel: string;
resumingCallButtonLabel: string;
returnToCallButtonAriaDescription?: string;
returnToCallButtonAriaLabel?: string;
roomNotFoundDetails?: string;
roomNotFoundTitle: string;
roomNotValidDetails?: string;
roomNotValidTitle: string;
selectedPeopleButtonLabel: string;
soundLabel: string;
spokenLanguageStrings?: SpokenLanguageStrings;
starRatingAriaLabel: string;
starSurveyFiveStarText: string;
starSurveyFourStarText: string;
starSurveyHelperText: string;
starSurveyOneStarText: string;
starSurveyThreeStarText: string;
starSurveyTwoStarText: string;
startCallButtonLabel: string;
startCaptionsButtonOffLabel?: string;
startCaptionsButtonOnLabel?: string;
startCaptionsButtonTooltipOffContent?: string;
startCaptionsButtonTooltipOnContent?: string;
surveyCancelButtonAriaLabel: string;
surveyConfirmButtonLabel: string;
surveyIssues: SurveyIssues;
SurveyIssuesHeadingStrings: SurveyIssuesHeadingStrings;
surveyQuestion: string;
surveyTextboxDefaultText: 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;
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 type CallIdChangedListener = (event: {
callId: string;
}) => void;
// @public
export type CallingSounds = {
callEnded?: SoundEffect;
callRinging?: SoundEffect;
callBusy?: SoundEffect;
};
// @beta
export type CallParticipantsLocator = {
participantIds: string[];
};
// @public
export interface CallWithChatAdapter extends CallWithChatAdapterManagement, AdapterState<CallWithChatAdapterState>, Disposable_2, CallWithChatAdapterSubscriptions {
}
// @public
export interface CallWithChatAdapterManagement {
// @beta
addParticipant(participant: PhoneNumberIdentifier, options?: AddPhoneNumberOptions): Promise<void>;
// (undocumented)
addParticipant(participant: CommunicationUserIdentifier): Promise<void>;
allowUnsupportedBrowserVersion(): void;
askDevicePermission(constrain: PermissionConstraints): Promise<void>;
// @beta (undocumented)
cancelFileUpload: (id: string) => void;
// @beta (undocumented)
clearFileUploads: () => void;
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)
downloadAttachments: (options: {
attachmentUrls: Record<string, string>;
}) => Promise<AttachmentDownloadResult[]>;
fetchInitialData(): Promise<void>;
// @beta
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>;
// @beta
onReactionClicked(reaction: Reaction): Promise<void>;
queryCameras(): Promise<VideoDeviceInfo[]>;
queryMicrophones(): Promise<AudioDeviceInfo[]>;
querySpeakers(): Promise<AudioDeviceInfo[]>;
raiseHand(): Promise<void>;
// @beta (undocumented)
registerActiveFileUploads: (files: File[]) => FileUploadManager[];
// @beta (undocumented)
registerCompletedFileUploads: (metadata: AttachmentMetadata[]) => FileUploadManager[];
removeParticipant(userId: string): Promise<void>;
// @beta
removeParticipant(participant: CommunicationIdentifier): Promise<void>;
// @beta
resumeCall: () => Promise<void>;
// @beta
sendDtmfTone: (dtmfTone: DtmfTone) => 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;
// @beta
startCall(participants: CommunicationIdentifier[], options?: StartCallOptions): Call | undefined;
startCamera(options?: VideoStreamOptions): Promise<void>;
startCaptions(options?: StartCaptionsOptions): Promise<void>;
startScreenShare(): Promise<void>;
// @beta
startSpotlight(userId: string): Promise<void>;
startVideoBackgroundEffect(videoBackgroundEffect: VideoBackgroundEffect): Promise<void>;
stopCamera(): Promise<void>;
stopCaptions(): Promise<void>;
stopScreenShare(): Promise<void>;
// @beta
stopSpotlight(userId: string): Promise<void>;
stopVideoBackgroundEffects(): Promise<void>;
// @beta
submitSurvey(survey: CallSurvey): Promise<CallSurveyResponse | undefined>;
unmute(): Promise<void>;
updateBackgroundPickerImages(backgroundImages: VideoBackgroundImage[]): void;
// @beta (undocumented)
updateFileUploadErrorMessage: (id: string, errorMessage: string) => void;
// @beta (undocumented)
updateFileUploadMetadata: (id: string, metadata: AttachmentMetadata) => void;
// @beta (undocumented)
updateFileUploadProgress: (id: string, progress: number) => void;
updateMessage(messageId: string, content: string, metadata?: 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: '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)
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: '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;
}
// @public
export interface CallWithChatAdapterUiState {
// @beta
fileUploads?: FileUploadsUiState;
isLocalPreviewMicrophoneEnabled: boolean;
page: CallCompositePage;
// @beta
unsupportedBrowserVersionsAllowed?: boolean;
}
// @public
export interface CallWithChatClientState {
alternateCallerId?: string | undefined;
call?: CallState;
chat?: ChatThreadClientState;
devices: DeviceManagerState;
displayName: string | undefined;
environmentInfo?: EnvironmentInfo;
hideAttendeeNames?: boolean;
isTeamsCall: boolean;
latestCallErrors: AdapterErrors;
latestChatErrors: AdapterErrors;
onResolveVideoEffectDependency?: () => Promise<VideoBackgroundEffectsDependency>;
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;
ControlButtonMicProhibited?: 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;
};
// @public
export type CallWithChatCompositeOptions = {
callControls?: boolean | CallWithChatControlOptions;
fileSharing?: FileSharingOptions;
deviceChecks?: DeviceCheckOptions;
onPermissionsTroubleshootingClick?: (permissionsState: {
camera: PermissionState;
microphone: PermissionState;
}) => void;
onNetworkingTroubleShootingClick?: () => void;
onEnvironmentInfoTroubleshootingClick?: () => void;
remoteVideoTileMenuOptions?: RemoteVideoTileMenuOptions;
localVideoTile?: boolean | LocalVideoTileOptions;
galleryOptions?: {
layout?: VideoGalleryLayout;
};
surveyOptions?: {
disableSurvey?: boolean;
onSurveyDismissed?: () => void;
onSurveySubmitted?: (callId: string, surveyId: string,
submittedSurvey: CallSurvey,
improvementSuggestions: CallSurveyImprovementSuggestions) => Promise<void>;
};
branding?: {
logo?: {
url: string;
alt?: string;
shape?: 'unset' | 'circle';
};
backgroundImage?: {
url: string;
};
};
};
// @public
export interface CallWithChatCompositeProps extends BaseCompositeProps<CallWithChatCompositeIcons> {
// (undocumented)
adapter: CallWithChatAdapter;
fluentTheme?: PartialTheme | Theme;
formFactor?: 'desktop' | 'mobile';
joinInvitationURL?: string;
options?: CallWithChatCompositeOptions;
}
// @public
export interface CallWithChatCompositeStrings {
chatButtonLabel: string;
chatButtonNewMessageNotificationLabel: string;
chatButtonTooltipClose: string;
chatButtonTooltipClosedWithMessageCount: string;
chatButtonTooltipOpen: string;
chatPaneTitle: string;
copyInviteLinkActionedAriaLabel: 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;
peopleButtonTooltipOpen: 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 | /* @conditional-compile-remove(PSTN-calls) */ {
disabled: boolean;
};
}
// @public
export type CallWithChatEvent = 'callError' | 'chatError' | 'callEnded' | 'isMutedChanged' | 'callIdChanged' | 'isLocalScreenSharingActiveChanged' | 'displayNameChanged' | 'isSpeakingChanged' | 'callParticipantsJoined' | 'callParticipantsLeft' | 'selectedMicrophoneChanged' | 'selectedSpeakerChanged' | /* @conditional-compile-remove(close-captions) */ 'isCaptionsActiveChanged' | /* @conditional-compile-remove(close-captions) */ 'captionsReceived' | /* @conditional-compile-remove(close-captions) */ 'isCaptionLanguageChanged' | /* @conditional-compile-remove(close-captions) */ 'isSpokenLanguageChanged' | /* @conditional-compile-remove(capabilities) */ 'capabilitiesChanged' | 'messageReceived' | 'messageEdited' | 'messageDeleted' | 'messageSent' | 'messageRead' | 'chatParticipantsAdded' | 'chatParticipantsRemoved';
// @public
export type CapabilitiesChangedListener = (data: CapabilitiesChangeInfo) => void;
// @public
export interface CapabilityChangedNotificationStrings {
shareScreen?: {
lostDueToRoleChangeToAttendee?: string;
grantedDueToRoleChangeToPresenter?: string;
};
turnVideoOn?: {
lostDueToMeetingOption?: string;
grantedDueToMeetingOption?: string;
};
unmuteMic?: {
lostDueToMeetingOption?: string;
grantedDueToMeetingOption?: string;
};
}
// @public
export type CaptionsReceivedListener = (event: {
captionsInfo: CaptionsInfo;
}) => void;
// @public
export type ChatAdapter = ChatAdapterThreadManagement & AdapterState<ChatAdapterState> & Disposable_2 & ChatAdapterSubscribers & FileUploadAdapter;
// @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>;
// (undocumented)
downloadAttachments: (options: {
attachmentUrls: Record<string, string>;
}) => Promise<AttachmentDownloadResult[]>;
fetchInitialData(): Promise<void>;
loadPreviousChatMessages(messagesToLoad: number): Promise<boolean>;
removeParticipant(userId: string): Promise<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, metadata?: Record<string, string>, options?: {
attachmentMetadata?: AttachmentMetadata[];
}): Promise<void>;
}
// @public
export type ChatAdapterUiState = {
error?: Error;
fileUploads?: FileUploadsUiState;
};
// @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;
SendBoxAttachFile?: JSX.Element;
};
// @public
export type ChatCompositeOptions = {
errorBar?: boolean;
participantPane?: boolean;
topic?: boolean;
autoFocus?: 'sendBoxTextField';
fileSharing?: FileSharingOptions;
};
// @public
export interface ChatCompositeProps extends BaseCompositeProps<ChatCompositeIcons> {
adapter: ChatAdapter;
formFactor?: 'desktop' | 'mobile';
onRenderMessage?: (messageProps: MessageProps, defaultOnRender?: MessageRenderer) => JSX.Element;
onRenderTypingIndicator?: (typingUsers: CommunicationParticipant[]) => JSX.Element;
options?: ChatCompositeOptions;
}
// @public
export interface ChatCompositeStrings {
chatListHeader: string;
uploadFile: string;
}
// @internal (undocumented)
export type _ChatThreadRestError = {
message: string;
code?: string;
statusCode?: number;
};
// @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;
// @beta
startCall(participants: CommunicationIdentifier[], options?: StartCallOptions): void;
}
// @public
export type CommonCallAdapterOptions = {
videoBackgroundOptions?: {
videoBackgroundImages?: VideoBackgroundImage[];
onResolveDependency?: () => Promise<VideoBackgroundEffectsDependency>;
};
onFetchProfile?: OnFetchProfileCallback;
callingSounds?: CallingSounds;
};
// @public
export type CommonCallControlOptions = {
displayType?: CallControlDisplayType;
cameraButton?: boolean | /* @conditional-compile-remove(PSTN-calls) */ {
disabled: boolean;
};
endCallButton?: boolean;
microphoneButton?: boolean | /* @conditional-compile-remove(PSTN-calls) */ {
disabled: boolean;
};
devicesButton?: boolean | /* @conditional-compile-remove(PSTN-calls) */ {
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 | /* @conditional-compile-remove(PSTN-calls) */ {
disabled: boolean;
};
};
// @public
export const COMPOSITE_LOCALE_AR_SA: CompositeLocale;
// @public
export const COMPOSITE_LOCALE_CS_CZ: 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_FI_FI: 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 const createAzureCommunicationCallAdapter: ({ userId, displayName, credential, locator, alternateCallerId, options }: AzureCommunicationCallAdapterArgs) => Promise<CallAdapter>;
// @public
export const createAzureCommunicationCallAdapterFromClient: (callClient: StatefulCallClient, callAgent: CallAgent, locator: CallAdapterLocator, options?: AzureCommunicationCallAdapterOptions) => Promise<CallAdapter>;
// @internal
export const _createAzureCommunicationCallAdapterInner: ({ userId, displayName, credential, locator, alternateCallerId, options, telemetryImplementationHint }: {
userId: CommunicationUserIdentifier;
displayName: string;
credential: CommunicationTokenCredential;
locator: CallAdapterLocator;
alternateCallerId?: string | undefined;
options?: CommonCallAdapterOptions | undefined;
telemetryImplementationHint?: _TelemetryImplementationHint | undefined;
}) => Promise<CallAdapter>;
// @public
export const createAzureCommunicationCallWithChatAdapter: ({ userId, displayName, credential, endpoint, locator, alternateCallerId, callAdapterOptions }: AzureCommunicationCallWithChatAdapterArgs) => Promise<CallWithChatAdapter>;
// @internal
export const _createAzureCommunicationCallWithChatAdapterFromAdapters: (callAdapter: CallAdapter, chatAdapter: ChatAdapter) => CallWithChatAdapter;
// @public
export const createAzureCommunicationCallWithChatAdapterFromClients: ({ callClient, callAgent, callLocator, chatClient, chatThreadClient, callAdapterOptions, chatAdapterOptions }: AzureCommunicationCallWithChatAdapterFromClientArgs) => Promise<CallWithChatAdapter>;
// @public
export const createAzureCommunicationChatAdapter: ({ endpoint: endpointUrl, userId, displayName, credential, threadId }: AzureCommunicationChatAdapterArgs) => Promise<ChatAdapter>;
// @public
export function createAzureCommunicationChatAdapterFromClient(chatClient: StatefulChatClient, chatThreadClient: ChatThreadClient, options?: {
credential?: CommunicationTokenCredential;
}): Promise<ChatAdapter>;
// @internal
export const _createAzureCommunicationChatAdapterInner: (endpoint: string, userId: CommunicationUserIdentifier, displayName: string, credential: CommunicationTokenCredential, threadId: string, telemetryImplementationHint?: _TelemetryImplementationHint) => Promise<ChatAdapter>;
// @beta (undocumented)
export const createTeamsCallAdapter: ({ userId, credential, locator, options }: TeamsCallAdapterArgs) => Promise<TeamsCallAdapter>;
// @beta
export const createTeamsCallAdapterFromClient: (callClient: StatefulCallClient, callAgent: TeamsCallAgent, locator: CallAdapterLocator, options?: TeamsAdapterOptions) => Promise<TeamsCallAdapter>;
// @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 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;
SendBoxAttachFile?: JSX.Element | undefined;
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 | undefined;
ControlButtonMicProhibited?: JSX.Element | undefined;
ControlButtonRaiseHand: JSX.Element;
ControlButtonLowerHand: JSX.Element;
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;
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;
ChatMessageOptions: React_2.JSX.Element;
ControlButtonParticipantsContextualMenuItem: React_2.JSX.Element;
CancelFileUpload: React_2.JSX.Element;
DownloadFile: React_2.JSX.Element;
DataLossPreventionProhibited: React_2.JSX.Element;
ErrorBarCallVideoRecoveredBySystem: React_2.JSX.Element;
ErrorBarCallVideoStoppedBySystem: 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;
DialpadBackspace: React_2.JSX.Element;
SitePermissionsSparkle: React_2.JSX.Element;
SitePermissionCamera: React_2.JSX.Element;
SitePermissionMic: React_2.JSX.Element;
SitePermissionCameraDenied: React_2.JSX.Element;
SitePermissionMicDenied: React_2.JSX.Element;
UnsupportedEnvironmentWarning: React_2.JSX.Element;
BrowserPermissionDeniedError: React_2.JSX.Element;
VideoTilePinned: 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;
SurveyStarIcon: React_2.JSX.Element;
SurveyStarIconFilled: React_2.JSX.Element;
VideoSpotlighted: React_2.JSX.Element;
};
// @beta
export interface DeviceCheckOptions {
camera: 'required' | 'optional' | 'doNotPrompt';
microphone: 'required' | 'optional' | 'doNotPrompt';
}
// @public
export type DiagnosticChangedEventListner = (event: MediaDiagnosticChangedEvent | NetworkDiagnosticChangedEvent) => void;
// @public
export type DisplayNameChangedListener = (event: {
participantId: CommunicationIdentifierKind;
displayName: string;
}) => void;
// @public
interface Disposable_2 {
dispose(): void;
}
export { Disposable_2 as Disposable }
// @internal
export type _FakeChatAdapterArgs = {
localParticipant: ChatParticipant;
remoteParticipants: ChatParticipant[];
topic?: string;
localParticipantPosition?: number;
fileSharingEnabled?: boolean;
fileUploads?: _MockFileUpload[];
failFileDownload?: boolean;
sendRemoteFileSharingMessage?: boolean;
sendRemoteInlineImageMessage?: boolean;
inlineImageUrl?: string;
frenchLocaleEnabled?: boolean;
showParticipantPane?: boolean;
participantsWithHiddenComposites?: ChatParticipant[];
customDataModelEnabled?: boolean;
chatThreadClientMethodErrors?: Partial<Record<keyof ChatThreadClient, _ChatThreadRestError>>;
theme?: 'light' | 'dark';
};
// @internal
export interface _FakeChatAdapters {
// (undocumented)
local: ChatAdapter;
// (undocumented)
remotes: ChatAdapter[];
// (undocumented)
service: {
model: Model;
threadId: string;
};
}
// @beta
export interface FileSharingOptions {
accept?: string;
downloadHandler?: FileDownloadHandler;
multiple?: boolean;
uploadHandler: FileUploadHandler;
}
// @beta (undocumented)
export interface FileUploadAdapter {
// (undocumented)
cancelFileUpload: (id: string) => void;
// (undocumented)
clearFileUploads: () => void;
// (undocumented)
registerActiveFileUploads: (files: File[]) => FileUploadManager[];
// (undocumented)
registerCompletedFileUploads: (metadata: AttachmentMetadata[]) => FileUploadManager[];
// (undocumented)
updateFileUploadErrorMessage: (id: string, errorMessage: string) => void;
// (undocumented)
updateFileUploadMetadata: (id: string, metadata: AttachmentMetadata) => void;
// (undocumented)
updateFileUploadProgress: (id: string, progress: number) => void;
}
// @beta
export type FileUploadError = {
message: string;
timestamp: number;
};
// @beta
export type FileUploadHandler = (userId: string, fileUploads: FileUploadManager[]) => void;
// @beta
export interface FileUploadManager {
file?: File;
id: string;
notifyUploadCompleted: (metadata: AttachmentMetadata) => void;
notifyUploadFailed: (message: string) => void;
notifyUploadProgressChanged: (value: number) => void;
}
// @beta
export interface FileUploadState {
error?: FileUploadError;
filename: string;
id: string;
metadata?: AttachmentMetadata;
progress: number;
}
// @beta
export type FileUploadsUiState = Record<string, FileUploadState>;
// @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';
}
// @beta
export interface LocalVideoTileOptions {
position?: 'grid' | 'floating';
}
// @public
export type MediaDiagnosticChangedEvent = MediaDiagnosticChangedEventArgs & {
type: 'media';
};
// @public
export type MessageDeletedListener = MessageReceivedListener;
// @public
export type MessageEditedListener = MessageReceivedListener;
// @public
export type MessageReadListener = (event: {
message: ChatMessage;
readBy: CommunicationUserKind;
}) => void;
// @public
export type MessageReceivedListener = (event: {
message: ChatMessage;
}) => void;
// @public
export type MessageSentListener = MessageReceivedListener;
// @internal
export class _MockCallAdapter implements CallAdapter {
constructor(testState: {
askDevicePermission?: (constrain: PermissionConstraints) => Promise<void>;
localParticipantRole?: ParticipantRole;
});
// (undocumented)
addParticipant(): Promise<void>;
// (undocumented)
allowUnsupportedBrowserVersion(): void;
// (undocumented)
askDevicePermission(constrain: PermissionConstraints): Promise<void>;
// (undocumented)
createStreamView(): Promise<void>;
// (undocumented)
dispose(): void;
// (undocumented)
disposeLocalVideoStreamView(): Promise<void>;
// (undocumented)
disposeRemoteVideoStreamView(): Promise<void>;
// (undocumented)
disposeScreenShareStreamView(): Promise<void>;
// (undocumented)
disposeStreamView(): Promise<void>;
// (undocumented)
getEnvironmentInfo(): Promise<EnvironmentInfo>;
// (undocumented)
getState(): CallAdapterState;
// (undocumented)
holdCall(): Promise<void>;
// (undocumented)
joinCall(): Call | undefined;
// (undocumented)
leaveCall(): Promise<void>;
// (undocumented)
lowerHand(): Promise<void>;
// (undocumented)
mute(): Promise<void>;
// (undocumented)
off(): void;
// (undocumented)
offStateChange(handler: (state: CallAdapterState) => void): void;
// (undocumented)
on(): void;
// (undocumented)
onReactionClicked(emoji: string): Promise<void>;
// (undocumented)
onStateChange(handler: (state: CallAdapterState) => void): void;
// (undocumented)
queryCameras(): Promise<VideoDeviceInfo[]>;
// (undocumented)
queryMicrophones(): Promise<AudioDeviceInfo[]>;
// (undocumented)
querySpeakers(): Promise<AudioDeviceInfo[]>;
// (undocumented)
raiseHand(): Promise<void>;
// (undocumented)
removeParticipant(): Promise<void>;
// (undocumented)
resumeCall(): Promise<void>;
// (undocumented)
sendDtmfTone(dtmfTone: DtmfTone): Promise<void>;
// (undocumented)
setCamera(): Promise<void>;
// (undocumented)
setCaptionLanguage(): Promise<void>;
// (undocumented)
setMicrophone(): Promise<void>;
// (undocumented)
setSpeaker(): Promise<void>;
// (undocumented)
setSpokenLanguage(): Promise<void>;
// (undocumented)
setState(state: CallAdapterState): void;
// (undocumented)
startCall(): Call | undefined;
// (undocumented)
startCamera(): Promise<void>;
// (undocumented)
startCaptions(): Promise<void>;
// (undocumented)
startScreenShare(): Promise<void>;
// (undocumented)
startSpotlight(userId: string): Promise<void>;
// (undocumented)
startVideoBackgroundEffect(): Promise<void>;
// (undocumented)
state: CallAdapterState;
// (undocumented)
stopCamera(): Promise<void>;
// (undocumented)
stopCaptions(): Promise<void>;
// (undocumented)
stopScreenShare(): Promise<void>;
// (undocumented)
stopSpotlight(userId: string): Promise<void>;
// (undocumented)
stopVideoBackgroundEffects(): Promise<void>;
// (undocumented)
submitSurvey(survey: CallSurvey): Promise<CallSurveyResponse | undefined>;
// (undocumented)
unmute(): Promise<void>;
// (undocumented)
updateBackgroundPickerImages(): void;
// (undocumented)
updateSelectedVideoBackgroundEffect(): void;
}
// @internal
export type _MockFileUpload = FileMetadata & {
uploadComplete?: boolean;
error?: string;
progress?: number;
attachmentType: string;
};
// @public
export type NetworkDiagnosticChangedEvent = NetworkDiagnosticChangedEventArgs & {
type: 'network';
};
// @beta
export type OnFetchProfileCallback = (userId: string, defaultProfile?: Profile) => Promise<Profile | undefined>;
// @public
export const onResolveVideoEffectDependency: () => Promise<VideoBackgroundEffectsDependency>;
// @public
export const onResolveVideoEffectDependencyLazy: () => Promise<VideoBackgroundEffectsDependency>;
// @public
export type ParticipantsAddedListener = (event: {
participantsAdded: ChatParticipant[];
addedBy: ChatParticipant;
}) => void;
// @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;
// @beta
export type Profile = {
displayName?: string;
};
// @public
export interface RemoteVideoTileMenuOptions {
isHidden?: boolean;
}
// @public
export type SoundEffect = {
url: string;
};
// @public
export type TeamsAdapterOptions = CommonCallAdapterOptions;
// @beta
export interface TeamsCallAdapter extends CommonCallAdapter {
// @deprecated
joinCall(microphoneOn?: boolean): TeamsCall | undefined;
// @public
joinCall(options?: JoinCallOptions): TeamsCall | undefined;
startCall(participants: string[], options?: StartCallOptions): TeamsCall | undefined;
startCall(participants: CommunicationIdentifier[], options?: StartCallOptions): TeamsCall | undefined;
}
// @beta
export type TeamsCallAdapterArgs = {
userId: MicrosoftTeamsUserIdentifier;
credential: CommunicationTokenCredential;
locator: TeamsMeetingLinkLocator | /* @conditional-compile-remove(teams-adhoc-call) */ /* @conditional-compile-remove(PSTN-calls) */ CallParticipantsLocator;
options?: TeamsAdapterOptions;
};
// @public
export type TopicChangedListener = (event: {
topic: string;
}) => void;
// @beta
export type TransferRequestedListener = (event: TransferRequestedEventArgs) => void;
// @public
export const useAzureCommunicationCallAdapter: (args: Partial<AzureCommunicationCallAdapterArgs>, afterCreate?: ((adapter: CallAdapter) => Promise<CallAdapter>) | undefined, beforeDispose?: ((adapter: CallAdapter) => Promise<void>) | undefined) => CallAdapter | undefined;
// @public
export const useAzureCommunicationCallWithChatAdapter: (args: Partial<AzureCommunicationCallWithChatAdapterArgs>, afterCreate?: ((adapter: CallWithChatAdapter) => Promise<CallWithChatAdapter>) | undefined, beforeDispose?: ((adapter: CallWithChatAdapter) => Promise<void>) | undefined) => CallWithChatAdapter | undefined;
// @public
export const useAzureCommunicationChatAdapter: (args: Partial<AzureCommunicationChatAdapterArgs>, afterCreate?: ((adapter: ChatAdapter) => Promise<ChatAdapter>) | undefined, beforeDispose?: ((adapter: ChatAdapter) => Promise<void>) | undefined) => ChatAdapter | undefined;
// @internal
export const _useCompositeLocale: () => CompositeLocale;
// @internal
export function _useFakeChatAdapters(args: _FakeChatAdapterArgs): _FakeChatAdapters | undefined;
// @beta
export const useTeamsCallAdapter: (args: Partial<TeamsCallAdapterArgs>, afterCreate?: ((adapter: TeamsCallAdapter) => Promise<TeamsCallAdapter>) | undefined, beforeDispose?: ((adapter: TeamsCallAdapter) => Promise<void>) | undefined) => TeamsCallAdapter | undefined;
// @public
export interface VideoBackgroundBlurEffect extends BackgroundBlurConfig {
effectName: 'blur';
}
// @public
export type VideoBackgroundEffect = VideoBackgroundNoEffect | VideoBackgroundBlurEffect | VideoBackgroundReplacementEffect;
// @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;
}
// (No @packageDocumentation comment for this package)