import { BoxProps } from '@mui/material';
import { LiveKitRoomProps, LocalUserChoices, VideoConferenceProps } from '@livekit/components-react';
import { VideoCodec } from 'livekit-client';
import React from 'react';
import { ConnectionDetails } from '../types';
export interface LiveStreamVideoConferenceProps extends BoxProps {
    /**
     * Overrides or extends the styles applied to the component.
     * @default null
     */
    className?: string;
    /**
     * User choices
     */
    userChoices?: LocalUserChoices;
    /**
     * Connection details, include
     *       serverUrl: serverUrl,
     *       roomName: roomName,
     *       participantToken: participantToken,
     *       participantName: participantName
     */
    connectionDetails?: ConnectionDetails;
    /**
     * Override video options
     */
    options?: {
        hq: boolean;
        codec: VideoCodec;
    };
    /**
     * onLeave room callback
     */
    handleOnLeaveRoom?: () => void;
    /**
     * Props to spread to LiveKitRoomComponent
     * @default {}
     */
    LiveKitRoomComponentProps?: LiveKitRoomProps;
    /**
     * Props to spread to VideoConferenceComponent
     * @default {}
     */
    VideoConferenceComponentProps?: VideoConferenceProps;
    /**
     * Element to be inserted before end conference content
     */
    startConferenceEndContent?: React.ReactNode | null;
    /**
     * Element to be inserted after end conference content
     */
    endConferenceEndContent?: React.ReactNode | null;
    /**
     * Any other properties
     */
    [p: string]: any;
}
/**
 *> API documentation for the Community-JS LiveStreamVideoConference component. Learn about the available props and the CSS API.
 *
 #### Import
 ```jsx
 import {LiveStreamVideoConference} from '@selfcommunity/react-ui';
 ```

 #### Component Name
 The name `LiveStreamVideoConference` can be used when providing style overrides in the theme.

 #### CSS

 |Rule Name|Global class|Description|
 |---|---|---|
 |root|.SCLiveStreamForm-root|Styles applied to the root element.|

 * @param inProps
 */
export default function LiveStreamVideoConference(inProps: LiveStreamVideoConferenceProps): JSX.Element;
