/**
 * Ocra (REST API for Sinch RTC clients)
 * REST API for Sinch RTC clients.
 *
 * The version of the OpenAPI document: 0.11.0
 * Contact: rtc@sinch.com
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
import { WebrtcRTCOAuthCredential } from './';
/**
 *
 * @export
 * @interface IceServer
 */
export interface IceServer {
    /**
     * STUN or TURN URI(s) as defined in [RFC7064] and [RFC7065] or other URI types.
     * @type {Array<string>}
     * @memberof IceServer
     */
    urls: Array<string>;
    /**
     * When the credentialType is "oauth", this field is the Key ID ('kid'). See WebRTC 1.0 specification and RFC 7518.
     * @type {string}
     * @memberof IceServer
     */
    username?: string;
    /**
     *
     * @type {string}
     * @memberof IceServer
     */
    credentialType: IceServerCredentialTypeEnum;
    /**
     *
     * @type {string}
     * @memberof IceServer
     */
    password?: string;
    /**
     *
     * @type {WebrtcRTCOAuthCredential}
     * @memberof IceServer
     */
    oauthCredential?: WebrtcRTCOAuthCredential;
    /**
     * Time of when credentials for the ICE servers expire.
     * @type {Date}
     * @memberof IceServer
     */
    validUntil: Date;
}
/**
* @export
* @enum {string}
*/
export declare enum IceServerCredentialTypeEnum {
    Oauth = "oauth",
    Password = "password"
}
export declare function IceServerFromJSON(json: any): IceServer;
export declare function IceServerFromJSONTyped(json: any, ignoreDiscriminator: boolean): IceServer;
export declare function IceServerToJSON(value?: IceServer | null): any;
