/**
 * Meeting BaaS API
 * Meeting BaaS API
 *
 * The version of the OpenAPI document: 1.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
import type { JoinRequestAutomaticLeave } from './join-request-automatic-leave';
import type { JoinRequestRecordingMode } from './join-request-recording-mode';
import type { JoinRequestSpeechToText } from './join-request-speech-to-text';
import type { JoinRequestStreaming } from './join-request-streaming';
/**
 *
 * @export
 * @interface JoinRequest
 */
export interface JoinRequest {
    [key: string]: any;
    /**
     *
     * @type {JoinRequestAutomaticLeave}
     * @memberof JoinRequest
     */
    'automatic_leave'?: JoinRequestAutomaticLeave;
    /**
     * The image to use for the bot, must be a URL. Recommended ratio is 16:9.
     * @type {string}
     * @memberof JoinRequest
     */
    'bot_image'?: string;
    /**
     *
     * @type {string}
     * @memberof JoinRequest
     */
    'botName': string;
    /**
     * We prevent multiple bots with same API key joining a meeting within 5 mins, unless overridden by deduplication_key.
     * @type {string}
     * @memberof JoinRequest
     */
    'deduplication_key'?: string;
    /**
     * There are no entry messages on Microsoft Teams as guests outside of an organization do not have access to the chat.
     * @type {string}
     * @memberof JoinRequest
     */
    'entry_message'?: string;
    /**
     * Custom data object
     * @type {{ [key: string]: any | undefined; }}
     * @memberof JoinRequest
     */
    'extra'?: {
        [key: string]: any | undefined;
    };
    /**
     *
     * @type {string}
     * @memberof JoinRequest
     */
    'meetingUrl': string;
    /**
     *
     * @type {JoinRequestRecordingMode}
     * @memberof JoinRequest
     */
    'recording_mode'?: JoinRequestRecordingMode;
    /**
     * Whether or not the bot should come from the available pool of bots or be a dedicated bot. Reserved bots come in exactly 4 minutes after the request.
     * @type {boolean}
     * @memberof JoinRequest
     */
    'reserved': boolean;
    /**
     *
     * @type {JoinRequestSpeechToText}
     * @memberof JoinRequest
     */
    'speech_to_text'?: JoinRequestSpeechToText;
    /**
     * Unix timestamp (in milliseconds) for when the bot should join the meeting. The bot joins 4 minutes before the start time.
     * @type {number}
     * @memberof JoinRequest
     */
    'start_time'?: number;
    /**
     *
     * @type {JoinRequestStreaming}
     * @memberof JoinRequest
     */
    'streaming'?: JoinRequestStreaming;
    /**
     * A webhook URL to send events to, overrides the webhook URL set in your account settings.
     * @type {string}
     * @memberof JoinRequest
     */
    'webhook_url'?: string;
    /**
     * For the Own Zoom Credentials feature, we need your zoom sdk id.
     * @type {string}
     * @memberof JoinRequest
     */
    'zoom_sdk_id'?: string;
    /**
     * For the Own Zoom Credentials feature, we need your zoom sdk pwd.
     * @type {string}
     * @memberof JoinRequest
     */
    'zoom_sdk_pwd'?: string;
}
