export * as contentSharingSessions from './contentSharingSessions';
export * as participants from './participants';
import type { EndpointRequest, Operation } from './../../types/common.ts';
export interface IEndpoints {
    'DELETE /communications/calls/{call-id}': Operation<'/communications/calls/{call-id}', 'delete'>;
    'GET /communications/calls': Operation<'/communications/calls', 'get'>;
    'GET /communications/calls/{call-id}': Operation<'/communications/calls/{call-id}', 'get'>;
    'PATCH /communications/calls/{call-id}': Operation<'/communications/calls/{call-id}', 'patch'>;
    'POST /communications/calls': Operation<'/communications/calls', 'post'>;
    'POST /communications/calls/{call-id}/addLargeGalleryView': Operation<'/communications/calls/{call-id}/addLargeGalleryView', 'post'>;
    'POST /communications/calls/{call-id}/answer': Operation<'/communications/calls/{call-id}/answer', 'post'>;
    'GET /communications/calls/{call-id}/audioRoutingGroups': Operation<'/communications/calls/{call-id}/audioRoutingGroups', 'get'>;
    'POST /communications/calls/{call-id}/audioRoutingGroups': Operation<'/communications/calls/{call-id}/audioRoutingGroups', 'post'>;
    'GET /communications/calls/{call-id}/audioRoutingGroups/{audioRoutingGroup-id}': Operation<'/communications/calls/{call-id}/audioRoutingGroups/{audioRoutingGroup-id}', 'get'>;
    'PATCH /communications/calls/{call-id}/audioRoutingGroups/{audioRoutingGroup-id}': Operation<'/communications/calls/{call-id}/audioRoutingGroups/{audioRoutingGroup-id}', 'patch'>;
    'DELETE /communications/calls/{call-id}/audioRoutingGroups/{audioRoutingGroup-id}': Operation<'/communications/calls/{call-id}/audioRoutingGroups/{audioRoutingGroup-id}', 'delete'>;
    'POST /communications/calls/{call-id}/cancelMediaProcessing': Operation<'/communications/calls/{call-id}/cancelMediaProcessing', 'post'>;
    'POST /communications/calls/{call-id}/changeScreenSharingRole': Operation<'/communications/calls/{call-id}/changeScreenSharingRole', 'post'>;
    'POST /communications/calls/{call-id}/keepAlive': Operation<'/communications/calls/{call-id}/keepAlive', 'post'>;
    'POST /communications/calls/logTeleconferenceDeviceQuality': Operation<'/communications/calls/logTeleconferenceDeviceQuality', 'post'>;
    'POST /communications/calls/{call-id}/mute': Operation<'/communications/calls/{call-id}/mute', 'post'>;
    'GET /communications/calls/{call-id}/operations': Operation<'/communications/calls/{call-id}/operations', 'get'>;
    'POST /communications/calls/{call-id}/operations': Operation<'/communications/calls/{call-id}/operations', 'post'>;
    'GET /communications/calls/{call-id}/operations/{commsOperation-id}': Operation<'/communications/calls/{call-id}/operations/{commsOperation-id}', 'get'>;
    'PATCH /communications/calls/{call-id}/operations/{commsOperation-id}': Operation<'/communications/calls/{call-id}/operations/{commsOperation-id}', 'patch'>;
    'DELETE /communications/calls/{call-id}/operations/{commsOperation-id}': Operation<'/communications/calls/{call-id}/operations/{commsOperation-id}', 'delete'>;
    'POST /communications/calls/{call-id}/playPrompt': Operation<'/communications/calls/{call-id}/playPrompt', 'post'>;
    'POST /communications/calls/{call-id}/record': Operation<'/communications/calls/{call-id}/record', 'post'>;
    'POST /communications/calls/{call-id}/recordResponse': Operation<'/communications/calls/{call-id}/recordResponse', 'post'>;
    'POST /communications/calls/{call-id}/redirect': Operation<'/communications/calls/{call-id}/redirect', 'post'>;
    'POST /communications/calls/{call-id}/reject': Operation<'/communications/calls/{call-id}/reject', 'post'>;
    'POST /communications/calls/{call-id}/sendDtmfTones': Operation<'/communications/calls/{call-id}/sendDtmfTones', 'post'>;
    'POST /communications/calls/{call-id}/startRecording': Operation<'/communications/calls/{call-id}/startRecording', 'post'>;
    'POST /communications/calls/{call-id}/startTranscription': Operation<'/communications/calls/{call-id}/startTranscription', 'post'>;
    'POST /communications/calls/{call-id}/stopRecording': Operation<'/communications/calls/{call-id}/stopRecording', 'post'>;
    'POST /communications/calls/{call-id}/stopTranscription': Operation<'/communications/calls/{call-id}/stopTranscription', 'post'>;
    'POST /communications/calls/{call-id}/subscribeToTone': Operation<'/communications/calls/{call-id}/subscribeToTone', 'post'>;
    'POST /communications/calls/{call-id}/transfer': Operation<'/communications/calls/{call-id}/transfer', 'post'>;
    'POST /communications/calls/{call-id}/unmute': Operation<'/communications/calls/{call-id}/unmute', 'post'>;
    'POST /communications/calls/{call-id}/updateRecordingStatus': Operation<'/communications/calls/{call-id}/updateRecordingStatus', 'post'>;
}
/**
 * `DELETE /communications/calls/{call-id}`
 *
 * Delete or hang up an active call. For group calls, this will only delete your call leg and the underlying group call will still continue.
 */
export declare function del(params?: IEndpoints['DELETE /communications/calls/{call-id}']['parameters']): EndpointRequest<IEndpoints['DELETE /communications/calls/{call-id}']['response']>;
/**
 * `GET /communications/calls`
 *
 * Retrieve the properties and relationships of a call object.
 */
export declare function list(params?: IEndpoints['GET /communications/calls']['parameters']): EndpointRequest<IEndpoints['GET /communications/calls']['response']>;
/**
 * `GET /communications/calls/{call-id}`
 *
 * Retrieve the properties and relationships of a call object.
 */
export declare function get(params?: IEndpoints['GET /communications/calls/{call-id}']['parameters']): EndpointRequest<IEndpoints['GET /communications/calls/{call-id}']['response']>;
/**
 * `PATCH /communications/calls/{call-id}`
 *
 */
export declare function update(body: IEndpoints['PATCH /communications/calls/{call-id}']['body'], params?: IEndpoints['PATCH /communications/calls/{call-id}']['parameters']): EndpointRequest<IEndpoints['PATCH /communications/calls/{call-id}']['response']>;
/**
 * `POST /communications/calls`
 *
 * Create call enables your bot to create a new outgoing peer-to-peer or group call, or join an existing meeting. You need to register the calling bot and go through the list of permissions needed. This API supports the following PSTN scenarios:
 */
export declare function create(body: IEndpoints['POST /communications/calls']['body']): EndpointRequest<IEndpoints['POST /communications/calls']['response']>;
export declare const addLargeGalleryView: {
    /**
     * `POST /communications/calls/{call-id}/addLargeGalleryView`
     *
     * Add the large gallery view to a call.  For details about how to identify a large gallery view participant in a roster so that you can retrieve the relevant data to subscribe to the video feed, see Identify large gallery view participants in a roster.
     */
    create: (body: IEndpoints["POST /communications/calls/{call-id}/addLargeGalleryView"]["body"], params?: IEndpoints["POST /communications/calls/{call-id}/addLargeGalleryView"]["parameters"]) => EndpointRequest<IEndpoints["POST /communications/calls/{call-id}/addLargeGalleryView"]["response"]>;
};
export declare const answer: {
    /**
     * `POST /communications/calls/{call-id}/answer`
     *
     * Enable a bot to answer an incoming call. The incoming call request can be an invitation from a participant in a group call or a peer-to-peer call. If an invitation to a group call is received, the notification contains the chatInfo and meetingInfo parameters. The bot is expected to answer, reject or redirect the call before the call times out. The current timeout value is 15 seconds. The current timeout value is 15 seconds for regular scenarios, and 5 seconds for policy-based recording scenarios. This API supports the following PSTN scenarios:
     */
    create: (body: IEndpoints["POST /communications/calls/{call-id}/answer"]["body"], params?: IEndpoints["POST /communications/calls/{call-id}/answer"]["parameters"]) => EndpointRequest<IEndpoints["POST /communications/calls/{call-id}/answer"]["response"]>;
};
export declare const audioRoutingGroups: {
    /**
     * `GET /communications/calls/{call-id}/audioRoutingGroups`
     *
     * Retrieve a list of audioRoutingGroup objects.
     */
    list: (params?: IEndpoints["GET /communications/calls/{call-id}/audioRoutingGroups"]["parameters"]) => EndpointRequest<IEndpoints["GET /communications/calls/{call-id}/audioRoutingGroups"]["response"]>;
    /**
     * `POST /communications/calls/{call-id}/audioRoutingGroups`
     *
     * Create a new audioRoutingGroup.
     */
    create: (body: IEndpoints["POST /communications/calls/{call-id}/audioRoutingGroups"]["body"], params?: IEndpoints["POST /communications/calls/{call-id}/audioRoutingGroups"]["parameters"]) => EndpointRequest<IEndpoints["POST /communications/calls/{call-id}/audioRoutingGroups"]["response"]>;
    /**
     * `GET /communications/calls/{call-id}/audioRoutingGroups/{audioRoutingGroup-id}`
     *
     * Retrieve the properties and relationships of an audioRoutingGroup object.
     */
    get: (params?: IEndpoints["GET /communications/calls/{call-id}/audioRoutingGroups/{audioRoutingGroup-id}"]["parameters"]) => EndpointRequest<IEndpoints["GET /communications/calls/{call-id}/audioRoutingGroups/{audioRoutingGroup-id}"]["response"]>;
    /**
     * `PATCH /communications/calls/{call-id}/audioRoutingGroups/{audioRoutingGroup-id}`
     *
     * Modify sources and receivers of an audioRoutingGroup.
     */
    update: (body: IEndpoints["PATCH /communications/calls/{call-id}/audioRoutingGroups/{audioRoutingGroup-id}"]["body"], params?: IEndpoints["PATCH /communications/calls/{call-id}/audioRoutingGroups/{audioRoutingGroup-id}"]["parameters"]) => EndpointRequest<IEndpoints["PATCH /communications/calls/{call-id}/audioRoutingGroups/{audioRoutingGroup-id}"]["response"]>;
    /**
     * `DELETE /communications/calls/{call-id}/audioRoutingGroups/{audioRoutingGroup-id}`
     *
     * Delete the specified audioRoutingGroup.
     */
    del: (params?: IEndpoints["DELETE /communications/calls/{call-id}/audioRoutingGroups/{audioRoutingGroup-id}"]["parameters"]) => EndpointRequest<IEndpoints["DELETE /communications/calls/{call-id}/audioRoutingGroups/{audioRoutingGroup-id}"]["response"]>;
};
export declare const cancelMediaProcessing: {
    /**
     * `POST /communications/calls/{call-id}/cancelMediaProcessing`
     *
     * Cancels processing for any in-progress media operations. Media operations refer to the IVR operations playPrompt and recordResponse, which are by default queued to process in order. The cancelMediaProcessing method cancels any operation that is in-process as well as operations that are queued. For example, this API can be used to clean up the IVR operation queue for a new media operation. However, it will not cancel a ubscribeToTone operation because it operates independent of any operation queue.
     */
    create: (body: IEndpoints["POST /communications/calls/{call-id}/cancelMediaProcessing"]["body"], params?: IEndpoints["POST /communications/calls/{call-id}/cancelMediaProcessing"]["parameters"]) => EndpointRequest<IEndpoints["POST /communications/calls/{call-id}/cancelMediaProcessing"]["response"]>;
};
export declare const changeScreenSharingRole: {
    /**
     * `POST /communications/calls/{call-id}/changeScreenSharingRole`
     *
     * Allow applications to share screen content with the participants of a group call.
     */
    create: (body: IEndpoints["POST /communications/calls/{call-id}/changeScreenSharingRole"]["body"], params?: IEndpoints["POST /communications/calls/{call-id}/changeScreenSharingRole"]["parameters"]) => EndpointRequest<IEndpoints["POST /communications/calls/{call-id}/changeScreenSharingRole"]["response"]>;
};
export declare const keepAlive: {
    /**
     * `POST /communications/calls/{call-id}/keepAlive`
     *
     * Make a request to this API every 15 to 45 minutes to ensure that an ongoing call remains active. A call that doesn&#x27;t receive this request within 45 minutes is considered inactive and ends. At least one successful request must be made within 45 minutes of the previous request, or the start of the call. We recommend that you send a request in shorter time intervals (every 15 minutes). Make sure that these requests are successful to prevent the call from timing out and ending. Attempting to send a request to a call that ended results in a 404 Not Found error. The resources related to the call should be cleaned up on the application side.
     */
    create: (params?: IEndpoints["POST /communications/calls/{call-id}/keepAlive"]["parameters"]) => EndpointRequest<IEndpoints["POST /communications/calls/{call-id}/keepAlive"]["response"]>;
};
export declare const logTeleconferenceDeviceQuality: {
    /**
     * `POST /communications/calls/logTeleconferenceDeviceQuality`
     *
     * Log video teleconferencing device quality data. The Cloud Video Interop (CVI) bot represents video teleconferencing (VTC) devices and acts as a back-to-back agent for a VTC device in a conference call. Because a CVI bot is in the middle of the VTC and Microsoft Teams infrastructure as a VTC proxy, it has two media legs. One media leg is between the CVI bot and Teams infrastructure, such as Teams conference server or a Teams client. The other media leg is between the CVI bot and the VTC device.  The third-party partners own the VTC media leg and the Teams infrastructure cannot access the quality data of the third-party call leg.  This method is only for the CVI partners to provide their media quality data.
     */
    create: (body: IEndpoints["POST /communications/calls/logTeleconferenceDeviceQuality"]["body"]) => EndpointRequest<IEndpoints["POST /communications/calls/logTeleconferenceDeviceQuality"]["response"]>;
};
export declare const mute: {
    /**
     * `POST /communications/calls/{call-id}/mute`
     *
     * Allows the application to mute itself. This is a server mute, meaning that the server drops all audio packets for this participant, even if the participant continues to stream audio. For more information about how to handle mute operations, see muteParticipantOperation.
     */
    create: (body: IEndpoints["POST /communications/calls/{call-id}/mute"]["body"], params?: IEndpoints["POST /communications/calls/{call-id}/mute"]["parameters"]) => EndpointRequest<IEndpoints["POST /communications/calls/{call-id}/mute"]["response"]>;
};
export declare const operations: {
    /**
     * `GET /communications/calls/{call-id}/operations`
     *
     * Get the status of an operation that adds the large gallery view to a call.
     */
    list: (params?: IEndpoints["GET /communications/calls/{call-id}/operations"]["parameters"]) => EndpointRequest<IEndpoints["GET /communications/calls/{call-id}/operations"]["response"]>;
    /**
     * `POST /communications/calls/{call-id}/operations`
     *
     */
    create: (body: IEndpoints["POST /communications/calls/{call-id}/operations"]["body"], params?: IEndpoints["POST /communications/calls/{call-id}/operations"]["parameters"]) => EndpointRequest<IEndpoints["POST /communications/calls/{call-id}/operations"]["response"]>;
    /**
     * `GET /communications/calls/{call-id}/operations/{commsOperation-id}`
     *
     * Get the status of an operation that adds the large gallery view to a call.
     */
    get: (params?: IEndpoints["GET /communications/calls/{call-id}/operations/{commsOperation-id}"]["parameters"]) => EndpointRequest<IEndpoints["GET /communications/calls/{call-id}/operations/{commsOperation-id}"]["response"]>;
    /**
     * `PATCH /communications/calls/{call-id}/operations/{commsOperation-id}`
     *
     */
    update: (body: IEndpoints["PATCH /communications/calls/{call-id}/operations/{commsOperation-id}"]["body"], params?: IEndpoints["PATCH /communications/calls/{call-id}/operations/{commsOperation-id}"]["parameters"]) => EndpointRequest<IEndpoints["PATCH /communications/calls/{call-id}/operations/{commsOperation-id}"]["response"]>;
    /**
     * `DELETE /communications/calls/{call-id}/operations/{commsOperation-id}`
     *
     */
    del: (params?: IEndpoints["DELETE /communications/calls/{call-id}/operations/{commsOperation-id}"]["parameters"]) => EndpointRequest<IEndpoints["DELETE /communications/calls/{call-id}/operations/{commsOperation-id}"]["response"]>;
};
export declare const playPrompt: {
    /**
     * `POST /communications/calls/{call-id}/playPrompt`
     *
     * Play a prompt in the call. For more information about how to handle operations, see commsOperation
     */
    create: (body: IEndpoints["POST /communications/calls/{call-id}/playPrompt"]["body"], params?: IEndpoints["POST /communications/calls/{call-id}/playPrompt"]["parameters"]) => EndpointRequest<IEndpoints["POST /communications/calls/{call-id}/playPrompt"]["response"]>;
};
export declare const record: {
    /**
     * `POST /communications/calls/{call-id}/record`
     *
     */
    create: (body: IEndpoints["POST /communications/calls/{call-id}/record"]["body"], params?: IEndpoints["POST /communications/calls/{call-id}/record"]["parameters"]) => EndpointRequest<IEndpoints["POST /communications/calls/{call-id}/record"]["response"]>;
};
export declare const recordResponse: {
    /**
     * `POST /communications/calls/{call-id}/recordResponse`
     *
     * Record a short audio response from the caller. A bot can use this API to capture a voice response from a caller after they&#x27;re prompted for a response. For more information about how to handle operations, see commsOperation. This action isn&#x27;t intended to record the entire call. The maximum length of recording is 2 minutes.The Cloud Communications Platform doesn&#x27;t save the recording permanently and discards it shortly after the call ends. The bot must download the recording promptly after the recording operation finishes by using the recordingLocation value provided in the completed notification.
     */
    create: (body: IEndpoints["POST /communications/calls/{call-id}/recordResponse"]["body"], params?: IEndpoints["POST /communications/calls/{call-id}/recordResponse"]["parameters"]) => EndpointRequest<IEndpoints["POST /communications/calls/{call-id}/recordResponse"]["response"]>;
};
export declare const redirect: {
    /**
     * `POST /communications/calls/{call-id}/redirect`
     *
     * Redirect an incoming call that wasn&#x27;t answered or rejected yet. The terms &#x27;redirecting&#x27; and &#x27;forwarding&#x27; a call are used interchangeably. The bot is expected to redirect the call before the call times out. The current timeout value is 15 seconds.
     */
    create: (body: IEndpoints["POST /communications/calls/{call-id}/redirect"]["body"], params?: IEndpoints["POST /communications/calls/{call-id}/redirect"]["parameters"]) => EndpointRequest<IEndpoints["POST /communications/calls/{call-id}/redirect"]["response"]>;
};
export declare const reject: {
    /**
     * `POST /communications/calls/{call-id}/reject`
     *
     * Enable a bot to reject an incoming call. The incoming call request can be an invite from a participant in a group call or a peer-to-peer call. If an invite to a group call is received, the notification contains the chatInfo and meetingInfo parameters. The bot is expected to answer or reject the call before the call times out. The current timeout value is 15 seconds. This API doesn&#x27;t end existing calls that have already been answered. Use delete call to end a call.
     */
    create: (body: IEndpoints["POST /communications/calls/{call-id}/reject"]["body"], params?: IEndpoints["POST /communications/calls/{call-id}/reject"]["parameters"]) => EndpointRequest<IEndpoints["POST /communications/calls/{call-id}/reject"]["response"]>;
};
export declare const sendDtmfTones: {
    /**
     * `POST /communications/calls/{call-id}/sendDtmfTones`
     *
     */
    create: (body: IEndpoints["POST /communications/calls/{call-id}/sendDtmfTones"]["body"], params?: IEndpoints["POST /communications/calls/{call-id}/sendDtmfTones"]["parameters"]) => EndpointRequest<IEndpoints["POST /communications/calls/{call-id}/sendDtmfTones"]["response"]>;
};
export declare const startRecording: {
    /**
     * `POST /communications/calls/{call-id}/startRecording`
     *
     */
    create: (body: IEndpoints["POST /communications/calls/{call-id}/startRecording"]["body"], params?: IEndpoints["POST /communications/calls/{call-id}/startRecording"]["parameters"]) => EndpointRequest<IEndpoints["POST /communications/calls/{call-id}/startRecording"]["response"]>;
};
export declare const startTranscription: {
    /**
     * `POST /communications/calls/{call-id}/startTranscription`
     *
     */
    create: (body: IEndpoints["POST /communications/calls/{call-id}/startTranscription"]["body"], params?: IEndpoints["POST /communications/calls/{call-id}/startTranscription"]["parameters"]) => EndpointRequest<IEndpoints["POST /communications/calls/{call-id}/startTranscription"]["response"]>;
};
export declare const stopRecording: {
    /**
     * `POST /communications/calls/{call-id}/stopRecording`
     *
     */
    create: (body: IEndpoints["POST /communications/calls/{call-id}/stopRecording"]["body"], params?: IEndpoints["POST /communications/calls/{call-id}/stopRecording"]["parameters"]) => EndpointRequest<IEndpoints["POST /communications/calls/{call-id}/stopRecording"]["response"]>;
};
export declare const stopTranscription: {
    /**
     * `POST /communications/calls/{call-id}/stopTranscription`
     *
     */
    create: (body: IEndpoints["POST /communications/calls/{call-id}/stopTranscription"]["body"], params?: IEndpoints["POST /communications/calls/{call-id}/stopTranscription"]["parameters"]) => EndpointRequest<IEndpoints["POST /communications/calls/{call-id}/stopTranscription"]["response"]>;
};
export declare const subscribeToTone: {
    /**
     * `POST /communications/calls/{call-id}/subscribeToTone`
     *
     * Subscribe to DTMF (dual-tone multi-frequency signaling) to allow you to be notified when the user presses keys on a dialpad. This action is supported only for calls that are initiated with serviceHostedMediaConfig.
     */
    create: (body: IEndpoints["POST /communications/calls/{call-id}/subscribeToTone"]["body"], params?: IEndpoints["POST /communications/calls/{call-id}/subscribeToTone"]["parameters"]) => EndpointRequest<IEndpoints["POST /communications/calls/{call-id}/subscribeToTone"]["response"]>;
};
export declare const transfer: {
    /**
     * `POST /communications/calls/{call-id}/transfer`
     *
     * Transfer an active peer-to-peer call or group call. A consultative transfer means that the transferor can inform the person they want to transfer the call to (the transferee), before the transfer is made. This is opposed to transfering the call directly.
     */
    create: (body: IEndpoints["POST /communications/calls/{call-id}/transfer"]["body"], params?: IEndpoints["POST /communications/calls/{call-id}/transfer"]["parameters"]) => EndpointRequest<IEndpoints["POST /communications/calls/{call-id}/transfer"]["response"]>;
};
export declare const unmute: {
    /**
     * `POST /communications/calls/{call-id}/unmute`
     *
     * Allow the application to unmute itself. This is a server unmute, meaning that the server will start sending audio packets for this participant to other participants again. For more information about how to handle unmute operations, see unmuteParticipantOperation.
     */
    create: (body: IEndpoints["POST /communications/calls/{call-id}/unmute"]["body"], params?: IEndpoints["POST /communications/calls/{call-id}/unmute"]["parameters"]) => EndpointRequest<IEndpoints["POST /communications/calls/{call-id}/unmute"]["response"]>;
};
export declare const updateRecordingStatus: {
    /**
     * `POST /communications/calls/{call-id}/updateRecordingStatus`
     *
     * Update the application&#x27;s recording status associated with a call. This requires the use of the Teams policy-based recording solution.
     */
    create: (body: IEndpoints["POST /communications/calls/{call-id}/updateRecordingStatus"]["body"], params?: IEndpoints["POST /communications/calls/{call-id}/updateRecordingStatus"]["parameters"]) => EndpointRequest<IEndpoints["POST /communications/calls/{call-id}/updateRecordingStatus"]["response"]>;
};
