/// import { OnRenderAvatarCallback } from '../types'; /** * @public * information required for each line of caption */ export type CaptionsInformation = { /** * unique id for each caption */ id: string; /** * speaker's display name */ displayName: string; /** * content of the caption */ captionText: string; /** * id of the speaker */ userId?: string; /** * timestamp when the caption was created * Please note that this value is essential for determining the order of captions and real time text messages * If you are using both captions and real time text, please ensure that the createdTimeStamp is populated */ createdTimeStamp?: Date; /** * If caption is finalized */ isFinalized?: boolean; }; /** * @public * information required for each line of real time text */ export type RealTimeTextInformation = { /** * The id of the real time text. */ id: number; /** * sender's display name */ displayName: string; /** * id of the sender */ userId?: string; /** * The real time text message. */ message: string; /** * if the real time text received is partial */ isTyping: boolean; /** * timestamp when the real time text was finalized */ finalizedTimeStamp: Date; /** * If message originated from the local participant * default value is false */ isMe?: boolean; }; /** * @public * strings for captions banner */ export interface CaptionsBannerStrings { /** * Spinner text for captions banner */ captionsBannerSpinnerText?: string; /** * Default text for RTT input text box */ realTimeTextInputBoxDefaultText?: string; /** * Error message for RTT input text box when the size exceeds the limit 2000 */ realTimeTextInputErrorMessage?: string; /** * Real time text disclosure banner title */ realTimeTextBannerTitle?: string; /** * Real time text disclosure banner content */ realTimeTextBannerContent?: string; /** * Real time text disclosure banner link label */ realTimeTextBannerLinkLabel?: string; /** * Title for the container when only captions is enabled */ captionsOnlyContainerTitle?: string; /** * Title for the container when only real time text is enabled */ realTimeTextOnlyContainerTitle?: string; /** * Title for the container when both captions and real time text is enabled */ captionsAndRealTimeTextContainerTitle?: string; /** * Expand button aria label */ expandButtonAriaLabel?: string; /** * Minimize button aria label */ minimizeButtonAriaLabel?: string; } /** * @public * CaptionsBanner Component Props. */ export interface CaptionsBannerProps { /** * Array of captions to be displayed */ captions: CaptionsInformation[]; /** * Array of finalized and partial real time text messages */ realTimeTexts?: { completedMessages?: RealTimeTextInformation[]; currentInProgress?: RealTimeTextInformation[]; myInProgress?: RealTimeTextInformation; }; /** * Flag to indicate if captions are on */ isCaptionsOn?: boolean; /** * Flag to indicate if real time text is on */ isRealTimeTextOn?: boolean; /** * Flag to indicate if captions are being started * This is used to show spinner while captions are being started */ startCaptionsInProgress?: boolean; /** * Optional callback to override render of the avatar. * * @param userId - user Id */ onRenderAvatar?: OnRenderAvatarCallback; /** * Optional strings for the component */ strings?: CaptionsBannerStrings; /** * Optional form factor for the component. * @defaultValue 'default' */ formFactor?: 'default' | 'compact'; /** * Optional options for the component. */ captionsOptions?: { height: 'full' | 'default'; }; /** * Optional callback to send real time text. */ onSendRealTimeText?: (text: string, isFinalized: boolean) => Promise; /** * Latest local real time text */ latestLocalRealTimeText?: RealTimeTextInformation; } /** * @public * A component for displaying a CaptionsBanner with user icon, displayName and captions text. */ export declare const CaptionsBanner: (props: CaptionsBannerProps) => JSX.Element; //# sourceMappingURL=CaptionsBanner.d.ts.map