expo-edge-speech
Version:
Text-to-speech library for Expo using Microsoft Edge TTS service
97 lines (96 loc) • 3.4 kB
JavaScript
;
/**
* Type definitions for expo-edge-speech
* Compatible with expo-speech API
*/
Object.defineProperty(exports, "__esModule", { value: true });
exports.ContentType = exports.MessagePath = exports.ConnectionState = exports.SkewAdjustmentError = exports.WebSocketError = exports.UnknownResponse = exports.UnexpectedResponse = exports.NoAudioReceived = void 0;
// ============================================================================
// Edge TTS Error Types
// ============================================================================
/**
* No audio data received from Edge TTS service
*/
class NoAudioReceived extends Error {
constructor(message = "No audio data received from Edge TTS service") {
super(message);
this.name = "NoAudioReceived";
}
}
exports.NoAudioReceived = NoAudioReceived;
/**
* Unexpected response format from Edge TTS
*/
class UnexpectedResponse extends Error {
constructor(message = "Received unexpected response from Edge TTS") {
super(message);
this.name = "UnexpectedResponse";
}
}
exports.UnexpectedResponse = UnexpectedResponse;
/**
* Unknown response path from Edge TTS
*/
class UnknownResponse extends Error {
constructor(message = "Received response with unknown path") {
super(message);
this.name = "UnknownResponse";
}
}
exports.UnknownResponse = UnknownResponse;
/**
* WebSocket connection or communication error
*/
class WebSocketError extends Error {
constructor(message = "WebSocket connection error") {
super(message);
this.name = "WebSocketError";
}
}
exports.WebSocketError = WebSocketError;
/**
* Clock skew adjustment error for Sec-MS-GEC token
*/
class SkewAdjustmentError extends Error {
constructor(message = "Failed to adjust clock skew for authentication") {
super(message);
this.name = "SkewAdjustmentError";
}
}
exports.SkewAdjustmentError = SkewAdjustmentError;
// ============================================================================
// Connection Management Types
// ============================================================================
/**
* Connection state enumeration
*/
var ConnectionState;
(function (ConnectionState) {
ConnectionState["Disconnected"] = "disconnected";
ConnectionState["Connecting"] = "connecting";
ConnectionState["Connected"] = "connected";
ConnectionState["Synthesizing"] = "synthesizing";
ConnectionState["Error"] = "error";
})(ConnectionState || (exports.ConnectionState = ConnectionState = {}));
// ============================================================================
// Message Path and Protocol Constants
// ============================================================================
/**
* Edge TTS WebSocket message paths
*/
var MessagePath;
(function (MessagePath) {
MessagePath["SpeechConfig"] = "speech.config";
MessagePath["SSML"] = "ssml";
MessagePath["TurnStart"] = "turn.start";
MessagePath["AudioMetadata"] = "audio.metadata";
MessagePath["TurnEnd"] = "turn.end";
})(MessagePath || (exports.MessagePath = MessagePath = {}));
/**
* Content types for Edge TTS messages
*/
var ContentType;
(function (ContentType) {
ContentType["JSON"] = "application/json; charset=utf-8";
ContentType["SSML"] = "application/ssml+xml";
})(ContentType || (exports.ContentType = ContentType = {}));