UNPKG

@euirim/microsoft-cognitiveservices-speech-sdk

Version:
1,184 lines (1,161 loc) 181 kB
// Generated by dts-bundle v0.7.3 /** * Represents audio input configuration used for specifying what type of input to use (microphone, file, stream). * @class AudioConfig */ export abstract class AudioConfig { /** * Creates an AudioConfig object representing the default microphone on the system. * @member AudioConfig.fromDefaultMicrophoneInput * @function * @public * @returns {AudioConfig} The audio input configuration being created. */ static fromDefaultMicrophoneInput(): AudioConfig; /** * Creates an AudioConfig object representing a microphone with the specified device ID. * @member AudioConfig.fromMicrophoneInput * @function * @public * @param {string | undefined} deviceId - Specifies the device ID of the microphone to be used. * Default microphone is used the value is omitted. * @returns {AudioConfig} The audio input configuration being created. */ static fromMicrophoneInput(deviceId?: string): AudioConfig; /** * Creates an AudioConfig object representing the specified file. * @member AudioConfig.fromWavFileInput * @function * @public * @param {File} fileName - Specifies the audio input file. Currently, only WAV / PCM with 16-bit * samples, 16 kHz sample rate, and a single channel (Mono) is supported. * @returns {AudioConfig} The audio input configuration being created. */ static fromWavFileInput(file: File): AudioConfig; /** * Creates an AudioConfig object representing the specified stream. * @member AudioConfig.fromStreamInput * @function * @public * @param {AudioInputStream | PullAudioInputStreamCallback} audioStream - Specifies the custom audio input * stream. Currently, only WAV / PCM with 16-bit samples, 16 kHz sample rate, and a single channel * (Mono) is supported. * @returns {AudioConfig} The audio input configuration being created. */ static fromStreamInput(audioStream: AudioInputStream | PullAudioInputStreamCallback): AudioConfig; /** * Explicitly frees any external resource attached to the object * @member AudioConfig.prototype.close * @function * @public */ abstract close(): void; /** * Sets an arbitrary property. * @member SpeechConfig.prototype.setProperty * @function * @public * @param {string} name - The name of the property to set. * @param {string} value - The new value of the property. */ abstract setProperty(name: string, value: string): void; /** * Returns the current value of an arbitrary property. * @member SpeechConfig.prototype.getProperty * @function * @public * @param {string} name - The name of the property to query. * @param {string} def - The value to return in case the property is not known. * @returns {string} The current value, or provided default, of the given property. */ abstract getProperty(name: string, def?: string): string; } /** * Represents audio input stream used for custom audio input configurations. * @private * @class AudioConfigImpl */ export class AudioConfigImpl extends AudioConfig implements IAudioSource { /** * Creates and initializes an instance of this class. * @constructor * @param {IAudioSource} source - An audio source. */ constructor(source: IAudioSource); /** * Format information for the audio */ readonly format: AudioStreamFormat; /** * @member AudioConfigImpl.prototype.close * @function * @public */ close(): void; /** * @member AudioConfigImpl.prototype.id * @function * @public */ id(): string; /** * @member AudioConfigImpl.prototype.turnOn * @function * @public * @returns {Promise<boolean>} A promise. */ turnOn(): Promise<boolean>; /** * @member AudioConfigImpl.prototype.attach * @function * @public * @param {string} audioNodeId - The audio node id. * @returns {Promise<IAudioStreamNode>} A promise. */ attach(audioNodeId: string): Promise<IAudioStreamNode>; /** * @member AudioConfigImpl.prototype.detach * @function * @public * @param {string} audioNodeId - The audio node id. */ detach(audioNodeId: string): void; /** * @member AudioConfigImpl.prototype.turnOff * @function * @public * @returns {Promise<boolean>} A promise. */ turnOff(): Promise<boolean>; /** * @member AudioConfigImpl.prototype.events * @function * @public * @returns {EventSource<AudioSourceEvent>} An event source for audio events. */ readonly events: EventSource<AudioSourceEvent>; setProperty(name: string, value: string): void; getProperty(name: string, def?: string): string; readonly deviceInfo: Promise<ISpeechConfigAudioDevice>; } /** * Represents audio stream format used for custom audio input configurations. * @class AudioStreamFormat */ export abstract class AudioStreamFormat { /** * Creates an audio stream format object representing the default audio stream * format (16KHz 16bit mono PCM). * @member AudioStreamFormat.getDefaultInputFormat * @function * @public * @returns {AudioStreamFormat} The audio stream format being created. */ static getDefaultInputFormat(): AudioStreamFormat; /** * Creates an audio stream format object with the specified pcm waveformat characteristics. * @member AudioStreamFormat.getWaveFormatPCM * @function * @public * @param {number} samplesPerSecond - Sample rate, in samples per second (Hertz). * @param {number} bitsPerSample - Bits per sample, typically 16. * @param {number} channels - Number of channels in the waveform-audio data. Monaural data * uses one channel and stereo data uses two channels. * @returns {AudioStreamFormat} The audio stream format being created. */ static getWaveFormatPCM(samplesPerSecond: number, bitsPerSample: number, channels: number): AudioStreamFormat; /** * Explicitly frees any external resource attached to the object * @member AudioStreamFormat.prototype.close * @function * @public */ abstract close(): void; } /** * @private * @class AudioStreamFormatImpl */ export class AudioStreamFormatImpl extends AudioStreamFormat { /** * Creates an instance with the given values. * @constructor * @param {number} samplesPerSec - Samples per second. * @param {number} bitsPerSample - Bits per sample. * @param {number} channels - Number of channels. */ constructor(samplesPerSec?: number, bitsPerSample?: number, channels?: number); /** * Retrieves the default input format. * @member AudioStreamFormatImpl.getDefaultInputFormat * @function * @public * @returns {AudioStreamFormatImpl} The default input format. */ static getDefaultInputFormat(): AudioStreamFormatImpl; /** * Closes the configuration object. * @member AudioStreamFormatImpl.prototype.close * @function * @public */ close(): void; /** * The format of the audio, valid values: 1 (PCM) * @member AudioStreamFormatImpl.prototype.formatTag * @function * @public */ formatTag: number; /** * The number of channels, valid values: 1 (Mono). * @member AudioStreamFormatImpl.prototype.channels * @function * @public */ channels: number; /** * The sample rate, valid values: 16000. * @member AudioStreamFormatImpl.prototype.samplesPerSec * @function * @public */ samplesPerSec: number; /** * The bits per sample, valid values: 16 * @member AudioStreamFormatImpl.prototype.b * @function * @public */ bitsPerSample: number; /** * Average bytes per second, usually calculated as nSamplesPerSec * nChannels * ceil(wBitsPerSample, 8). * @member AudioStreamFormatImpl.prototype.avgBytesPerSec * @function * @public */ avgBytesPerSec: number; /** * The size of a single frame, valid values: nChannels * ceil(wBitsPerSample, 8). * @member AudioStreamFormatImpl.prototype.blockAlign * @function * @public */ blockAlign: number; } export const bufferSize: number; /** * Represents audio input stream used for custom audio input configurations. * @class AudioInputStream */ export abstract class AudioInputStream { /** * Creates and initializes an instance. * @constructor */ protected constructor(); /** * Creates a memory backed PushAudioInputStream with the specified audio format. * @member AudioInputStream.createPushStream * @function * @public * @param {AudioStreamFormat} format - The audio data format in which audio will be * written to the push audio stream's write() method (currently only support 16 kHz 16bit mono PCM). * @returns {PushAudioInputStream} The audio input stream being created. */ static createPushStream(format?: AudioStreamFormat): PushAudioInputStream; /** * Creates a PullAudioInputStream that delegates to the specified callback interface for read() * and close() methods. * @member AudioInputStream.createPullStream * @function * @public * @param {PullAudioInputStreamCallback} callback - The custom audio input object, derived from * PullAudioInputStreamCallback * @param {AudioStreamFormat} format - The audio data format in which audio will be returned from * the callback's read() method (currently only support 16 kHz 16bit mono PCM). * @returns {PullAudioInputStream} The audio input stream being created. */ static createPullStream(callback: PullAudioInputStreamCallback, format?: AudioStreamFormat): PullAudioInputStream; /** * Explicitly frees any external resource attached to the object * @member AudioInputStream.prototype.close * @function * @public */ abstract close(): void; } /** * Represents memory backed push audio input stream used for custom audio input configurations. * @class PushAudioInputStream */ export abstract class PushAudioInputStream extends AudioInputStream { /** * Creates a memory backed PushAudioInputStream with the specified audio format. * @member PushAudioInputStream.create * @function * @public * @param {AudioStreamFormat} format - The audio data format in which audio will be written to the * push audio stream's write() method (currently only support 16 kHz 16bit mono PCM). * @returns {PushAudioInputStream} The push audio input stream being created. */ static create(format?: AudioStreamFormat): PushAudioInputStream; /** * Writes the audio data specified by making an internal copy of the data. * @member PushAudioInputStream.prototype.write * @function * @public * @param {ArrayBuffer} dataBuffer - The audio buffer of which this function will make a copy. */ abstract write(dataBuffer: ArrayBuffer): void; /** * Closes the stream. * @member PushAudioInputStream.prototype.close * @function * @public */ abstract close(): void; } /** * Represents memory backed push audio input stream used for custom audio input configurations. * @private * @class PushAudioInputStreamImpl */ export class PushAudioInputStreamImpl extends PushAudioInputStream implements IAudioSource { /** * Creates and initalizes an instance with the given values. * @constructor * @param {AudioStreamFormat} format - The audio stream format. */ constructor(chunkSize: number, format?: AudioStreamFormat); /** * Format information for the audio */ readonly format: AudioStreamFormat; /** * Writes the audio data specified by making an internal copy of the data. * @member PushAudioInputStreamImpl.prototype.write * @function * @public * @param {ArrayBuffer} dataBuffer - The audio buffer of which this function will make a copy. */ write(dataBuffer: ArrayBuffer): void; /** * Closes the stream. * @member PushAudioInputStreamImpl.prototype.close * @function * @public */ close(): void; id(): string; turnOn(): Promise<boolean>; attach(audioNodeId: string): Promise<IAudioStreamNode>; detach(audioNodeId: string): void; turnOff(): Promise<boolean>; readonly events: EventSource<AudioSourceEvent>; readonly deviceInfo: Promise<ISpeechConfigAudioDevice>; } export abstract class PullAudioInputStream extends AudioInputStream { /** * Creates and initializes and instance. * @constructor */ protected constructor(); /** * Creates a PullAudioInputStream that delegates to the specified callback interface for * read() and close() methods, using the default format (16 kHz 16bit mono PCM). * @member PullAudioInputStream.create * @function * @public * @param {PullAudioInputStreamCallback} callback - The custom audio input object, * derived from PullAudioInputStreamCustomCallback * @param {AudioStreamFormat} format - The audio data format in which audio will be * returned from the callback's read() method (currently only support 16 kHz 16bit mono PCM). * @returns {PullAudioInputStream} The push audio input stream being created. */ static create(callback: PullAudioInputStreamCallback, format?: AudioStreamFormat): PullAudioInputStream; /** * Explicitly frees any external resource attached to the object * @member PullAudioInputStream.prototype.close * @function * @public */ abstract close(): void; } /** * Represents audio input stream used for custom audio input configurations. * @private * @class PullAudioInputStreamImpl */ export class PullAudioInputStreamImpl extends PullAudioInputStream implements IAudioSource { /** * Creates a PullAudioInputStream that delegates to the specified callback interface for * read() and close() methods, using the default format (16 kHz 16bit mono PCM). * @constructor * @param {PullAudioInputStreamCallback} callback - The custom audio input object, * derived from PullAudioInputStreamCustomCallback * @param {AudioStreamFormat} format - The audio data format in which audio will be * returned from the callback's read() method (currently only support 16 kHz 16bit mono PCM). */ constructor(callback: PullAudioInputStreamCallback, format?: AudioStreamFormatImpl); /** * Format information for the audio */ readonly format: AudioStreamFormat; /** * Closes the stream. * @member PullAudioInputStreamImpl.prototype.close * @function * @public */ close(): void; id(): string; turnOn(): Promise<boolean>; attach(audioNodeId: string): Promise<IAudioStreamNode>; detach(audioNodeId: string): void; turnOff(): Promise<boolean>; readonly events: EventSource<AudioSourceEvent>; readonly deviceInfo: Promise<ISpeechConfigAudioDevice>; } export const bufferSize: number; /** * Represents audio input stream used for custom audio input configurations. * @class AudioInputStream */ export abstract class AudioOutputStream { /** * Creates and initializes an instance. * @constructor */ protected constructor(); /** * Creates a memory backed PullAudioOutputStream with the specified audio format. * @member AudioInputStream.createPullStream * @function * @public * @param {AudioStreamFormat} format - The audio data format in which audio will be * written to the push audio stream's write() method (currently only support 16 kHz 16bit mono PCM). * @returns {PullAudioOutputStream} The audio input stream being created. */ static createPullStream(format?: AudioStreamFormat): PullAudioOutputStream; /** * Explicitly frees any external resource attached to the object * @member AudioInputStream.prototype.close * @function * @public */ abstract close(): void; } /** * Represents memory backed push audio input stream used for custom audio input configurations. * @class PullAudioOutputStream */ export abstract class PullAudioOutputStream extends AudioOutputStream { /** * Creates a memory backed PullAudioOutputStream with the specified audio format. * @member PullAudioOutputStream.create * @function * @public * @param {AudioStreamFormat} format - The audio data format in which audio will be written to the * push audio stream's write() method (currently only support 16 kHz 16bit mono PCM). * @returns {PullAudioOutputStream} The push audio input stream being created. */ static create(format?: AudioStreamFormat): PullAudioOutputStream; /** * Reads audio data from the internal buffer. * @member PullAudioOutputStream.prototype.read * @function * @public * @returns {Promise<ArrayBuffer>} Audio buffer data. */ abstract read(): Promise<ArrayBuffer>; /** * Closes the stream. * @member PullAudioOutputStream.prototype.close * @function * @public */ abstract close(): void; } /** * Represents memory backed push audio input stream used for custom audio input configurations. * @private * @class PullAudioOutputStreamImpl */ export class PullAudioOutputStreamImpl extends PullAudioOutputStream { /** * Creates and initalizes an instance with the given values. * @constructor * @param {AudioStreamFormat} format - The audio stream format. */ constructor(chunkSize: number, format?: AudioStreamFormat); /** * Format information for the audio */ readonly format: AudioStreamFormat; /** * Checks if the stream is closed * @member PullAudioOutputStreamImpl.prototype.isClosed * @property * @public */ readonly isClosed: boolean; /** * Gets the id of the stream * @member PullAudioOutputStreamImpl.prototype.id * @property * @public */ readonly id: string; /** * Reads data from the buffer * @member PullAudioOutputStreamImpl.prototype.read * @function * @public * @param {ArrayBuffer} dataBuffer - The audio buffer of which this function will make a copy. */ read(): Promise<ArrayBuffer>; /** * Writes the audio data specified by making an internal copy of the data. * @member PullAudioOutputStreamImpl.prototype.write * @function * @public * @param {ArrayBuffer} dataBuffer - The audio buffer of which this function will make a copy. */ write(dataBuffer: ArrayBuffer): void; /** * Closes the stream. * @member PullAudioOutputStreamImpl.prototype.close * @function * @public */ close(): void; } /** * Defines the possible reasons a recognition result might be canceled. * @class CancellationReason */ export enum CancellationReason { /** * Indicates that an error occurred during speech recognition. * @member CancellationReason.Error */ Error = 0, /** * Indicates that the end of the audio stream was reached. * @member CancellationReason.EndOfStream */ EndOfStream = 1 } /** * An abstract base class that defines callback methods (read() and close()) for * custom audio input streams). * @class PullAudioInputStreamCallback */ export abstract class PullAudioInputStreamCallback { /** * Reads data from audio input stream into the data buffer. The maximal number of bytes * to be read is determined by the size of dataBuffer. * @member PullAudioInputStreamCallback.prototype.read * @function * @public * @param {ArrayBuffer} dataBuffer - The byte array to store the read data. * @returns {number} the number of bytes have been read. */ abstract read(dataBuffer: ArrayBuffer): number; /** * Closes the audio input stream. * @member PullAudioInputStreamCallback.prototype.close * @function * @public */ abstract close(): void; } /** * Represents a keyword recognition model for recognizing when * the user says a keyword to initiate further speech recognition. * @class KeywordRecognitionModel */ export class KeywordRecognitionModel { /** * Creates a keyword recognition model using the specified filename. * @member KeywordRecognitionModel.fromFile * @function * @public * @param {string} fileName - A string that represents file name for the keyword recognition model. * Note, the file can point to a zip file in which case the model * will be extracted from the zip. * @returns {KeywordRecognitionModel} The keyword recognition model being created. */ static fromFile(fileName: string): KeywordRecognitionModel; /** * Creates a keyword recognition model using the specified filename. * @member KeywordRecognitionModel.fromStream * @function * @public * @param {string} file - A File that represents file for the keyword recognition model. * Note, the file can point to a zip file in which case the model will be extracted from the zip. * @returns {KeywordRecognitionModel} The keyword recognition model being created. */ static fromStream(file: File): KeywordRecognitionModel; /** * Dispose of associated resources. * @member KeywordRecognitionModel.prototype.close * @function * @public */ close(): void; } /** * Defines content for session events like SessionStarted/Stopped, SoundStarted/Stopped. * @class SessionEventArgs */ export class SessionEventArgs { /** * Creates and initializes an instance of this class. * @constructor * @param {string} sessionId - The session id. */ constructor(sessionId: string); /** * Represents the session identifier. * @member SessionEventArgs.prototype.sessionId * @function * @public * @returns {string} Represents the session identifier. */ readonly sessionId: string; } /** * Defines payload for session events like Speech Start/End Detected * @class */ export class RecognitionEventArgs extends SessionEventArgs { /** * Creates and initializes an instance of this class. * @constructor * @param {number} offset - The offset. * @param {string} sessionId - The session id. */ constructor(offset: number, sessionId?: string); /** * Represents the message offset * @member RecognitionEventArgs.prototype.offset * @function * @public */ readonly offset: number; } /** * Define Speech Recognizer output formats. * @class OutputFormat */ export enum OutputFormat { /** * @member OutputFormat.Simple */ Simple = 0, /** * @member OutputFormat.Detailed */ Detailed = 1 } /** * Intent recognition result event arguments. * @class */ export class IntentRecognitionEventArgs extends RecognitionEventArgs { /** * Creates and initializes an instance of this class. * @constructor * @param result - The result of the intent recognition. * @param offset - The offset. * @param sessionId - The session id. */ constructor(result: IntentRecognitionResult, offset?: number, sessionId?: string); /** * Represents the intent recognition result. * @member IntentRecognitionEventArgs.prototype.result * @function * @public * @returns {IntentRecognitionResult} Represents the intent recognition result. */ readonly result: IntentRecognitionResult; } /** * Defines result of speech recognition. * @class RecognitionResult */ export class RecognitionResult { /** * Creates and initializes an instance of this class. * @constructor * @param {string} resultId - The result id. * @param {ResultReason} reason - The reason. * @param {string} text - The recognized text. * @param {number} duration - The duration. * @param {number} offset - The offset into the stream. * @param {string} errorDetails - Error details, if provided. * @param {string} json - Additional Json, if provided. * @param {PropertyCollection} properties - Additional properties, if provided. */ constructor(resultId?: string, reason?: ResultReason, text?: string, duration?: number, offset?: number, errorDetails?: string, json?: string, properties?: PropertyCollection); /** * Specifies the result identifier. * @member RecognitionResult.prototype.resultId * @function * @public * @returns {string} Specifies the result identifier. */ readonly resultId: string; /** * Specifies status of the result. * @member RecognitionResult.prototype.reason * @function * @public * @returns {ResultReason} Specifies status of the result. */ readonly reason: ResultReason; /** * Presents the recognized text in the result. * @member RecognitionResult.prototype.text * @function * @public * @returns {string} Presents the recognized text in the result. */ readonly text: string; /** * Duration of recognized speech in 100 nano second incements. * @member RecognitionResult.prototype.duration * @function * @public * @returns {number} Duration of recognized speech in 100 nano second incements. */ readonly duration: number; /** * Offset of recognized speech in 100 nano second incements. * @member RecognitionResult.prototype.offset * @function * @public * @returns {number} Offset of recognized speech in 100 nano second incements. */ readonly offset: number; /** * In case of an unsuccessful recognition, provides details of the occurred error. * @member RecognitionResult.prototype.errorDetails * @function * @public * @returns {string} a brief description of an error. */ readonly errorDetails: string; /** * A string containing Json serialized recognition result as it was received from the service. * @member RecognitionResult.prototype.json * @function * @private * @returns {string} Json serialized representation of the result. */ readonly json: string; /** * The set of properties exposed in the result. * @member RecognitionResult.prototype.properties * @function * @public * @returns {PropertyCollection} The set of properties exposed in the result. */ readonly properties: PropertyCollection; } /** * Defines result of speech recognition. * @class SpeechRecognitionResult */ export class SpeechRecognitionResult extends RecognitionResult { /** * Creates and initializes an instance of this class. * @constructor * @public * @param {string} resultId - The result id. * @param {ResultReason} reason - The reason. * @param {string} text - The recognized text. * @param {number} duration - The duration. * @param {number} offset - The offset into the stream. * @param {string} errorDetails - Error details, if provided. * @param {string} json - Additional Json, if provided. * @param {PropertyCollection} properties - Additional properties, if provided. */ constructor(resultId?: string, reason?: ResultReason, text?: string, duration?: number, offset?: number, errorDetails?: string, json?: string, properties?: PropertyCollection); } /** * Intent recognition result. * @class */ export class IntentRecognitionResult extends SpeechRecognitionResult { /** * Creates and initializes an instance of this class. * @constructor * @param intentId - The intent id. * @param resultId - The result id. * @param reason - The reason. * @param text - The recognized text. * @param duration - The duration. * @param offset - The offset into the stream. * @param errorDetails - Error details, if provided. * @param json - Additional Json, if provided. * @param properties - Additional properties, if provided. */ constructor(intentId?: string, resultId?: string, reason?: ResultReason, text?: string, duration?: number, offset?: number, errorDetails?: string, json?: string, properties?: PropertyCollection); /** * A String that represents the intent identifier being recognized. * @member IntentRecognitionResult.prototype.intentId * @function * @public * @returns {string} A String that represents the intent identifier being recognized. */ readonly intentId: string; } /** * Language understanding model * @class LanguageUnderstandingModel */ export class LanguageUnderstandingModel { /** * Creates and initializes a new instance * @constructor */ protected constructor(); /** * Creates an language understanding model using the specified endpoint. * @member LanguageUnderstandingModel.fromEndpoint * @function * @public * @param {URL} uri - A String that represents the endpoint of the language understanding model. * @returns {LanguageUnderstandingModel} The language understanding model being created. */ static fromEndpoint(uri: URL): LanguageUnderstandingModel; /** * Creates an language understanding model using the application id of Language Understanding service. * @member LanguageUnderstandingModel.fromAppId * @function * @public * @param {string} appId - A String that represents the application id of Language Understanding service. * @returns {LanguageUnderstandingModel} The language understanding model being created. */ static fromAppId(appId: string): LanguageUnderstandingModel; /** * Creates a language understanding model using hostname, subscription key and application * id of Language Understanding service. * @member LanguageUnderstandingModel.fromSubscription * @function * @public * @param {string} subscriptionKey - A String that represents the subscription key of * Language Understanding service. * @param {string} appId - A String that represents the application id of Language * Understanding service. * @param {LanguageUnderstandingModel} region - A String that represents the region * of the Language Understanding service (see the <a href="https://aka.ms/csspeech/region">region page</a>). * @returns {LanguageUnderstandingModel} The language understanding model being created. */ static fromSubscription(subscriptionKey: string, appId: string, region: string): LanguageUnderstandingModel; } /** * @private * @class LanguageUnderstandingModelImpl */ export class LanguageUnderstandingModelImpl extends LanguageUnderstandingModel { appId: string; region: string; subscriptionKey: string; } /** * Defines contents of speech recognizing/recognized event. * @class SpeechRecognitionEventArgs */ export class SpeechRecognitionEventArgs extends RecognitionEventArgs { /** * Creates and initializes an instance of this class. * @constructor * @param {SpeechRecognitionResult} result - The speech recognition result. * @param {number} offset - The offset. * @param {string} sessionId - The session id. */ constructor(result: SpeechRecognitionResult, offset?: number, sessionId?: string); /** * Specifies the recognition result. * @member SpeechRecognitionEventArgs.prototype.result * @function * @public * @returns {SpeechRecognitionResult} the recognition result. */ readonly result: SpeechRecognitionResult; } /** * Defines content of a RecognitionErrorEvent. * @class SpeechRecognitionCanceledEventArgs */ export class SpeechRecognitionCanceledEventArgs extends RecognitionEventArgs { /** * Creates and initializes an instance of this class. * @constructor * @param {CancellationReason} reason - The cancellation reason. * @param {string} errorDetails - Error details, if provided. * @param {number} offset - The offset. * @param {string} sessionId - The session id. */ constructor(reason: CancellationReason, errorDetails: string, errorCode: CancellationErrorCode, offset?: number, sessionId?: string); /** * The reason the recognition was canceled. * @member SpeechRecognitionCanceledEventArgs.prototype.reason * @function * @public * @returns {CancellationReason} Specifies the reason canceled. */ readonly reason: CancellationReason; /** * The error code in case of an unsuccessful recognition. * Added in version 1.1.0. * @return An error code that represents the error reason. */ readonly errorCode: CancellationErrorCode; /** * In case of an unsuccessful recognition, provides details of the occurred error. * @member SpeechRecognitionCanceledEventArgs.prototype.errorDetails * @function * @public * @returns {string} A String that represents the error details. */ readonly errorDetails: string; } /** * Translation text result event arguments. * @class TranslationRecognitionEventArgs */ export class TranslationRecognitionEventArgs extends RecognitionEventArgs { /** * Creates and initializes an instance of this class. * @constructor * @param {TranslationRecognitionResult} result - The translation recognition result. * @param {number} offset - The offset. * @param {string} sessionId - The session id. */ constructor(result: TranslationRecognitionResult, offset?: number, sessionId?: string); /** * Specifies the recognition result. * @member TranslationRecognitionEventArgs.prototype.result * @function * @public * @returns {TranslationRecognitionResult} the recognition result. */ readonly result: TranslationRecognitionResult; } /** * Translation Synthesis event arguments * @class TranslationSynthesisEventArgs */ export class TranslationSynthesisEventArgs extends SessionEventArgs { /** * Creates and initializes an instance of this class. * @constructor * @param {TranslationSynthesisResult} result - The translation synthesis result. * @param {string} sessionId - The session id. */ constructor(result: TranslationSynthesisResult, sessionId?: string); /** * Specifies the translation synthesis result. * @member TranslationSynthesisEventArgs.prototype.result * @function * @public * @returns {TranslationSynthesisResult} Specifies the translation synthesis result. */ readonly result: TranslationSynthesisResult; } /** * Translation text result. * @class TranslationRecognitionResult */ export class TranslationRecognitionResult extends SpeechRecognitionResult { /** * Creates and initializes an instance of this class. * @constructor * @param {Translations} translations - The translations. * @param {string} resultId - The result id. * @param {ResultReason} reason - The reason. * @param {string} text - The recognized text. * @param {number} duration - The duration. * @param {number} offset - The offset into the stream. * @param {string} errorDetails - Error details, if provided. * @param {string} json - Additional Json, if provided. * @param {PropertyCollection} properties - Additional properties, if provided. */ constructor(translations: Translations, resultId?: string, reason?: ResultReason, text?: string, duration?: number, offset?: number, errorDetails?: string, json?: string, properties?: PropertyCollection); /** * Presents the translation results. Each item in the dictionary represents * a translation result in one of target languages, where the key is the name * of the target language, in BCP-47 format, and the value is the translation * text in the specified language. * @member TranslationRecognitionResult.prototype.translations * @function * @public * @returns {Translations} the current translation map that holds all translations requested. */ readonly translations: Translations; } /** * Defines translation synthesis result, i.e. the voice output of the translated * text in the target language. * @class TranslationSynthesisResult */ export class TranslationSynthesisResult { /** * Creates and initializes an instance of this class. * @constructor * @param {ResultReason} reason - The synthesis reason. * @param {ArrayBuffer} audio - The audio data. */ constructor(reason: ResultReason, audio: ArrayBuffer); /** * Translated text in the target language. * @member TranslationSynthesisResult.prototype.audio * @function * @public * @returns {ArrayBuffer} Translated audio in the target language. */ readonly audio: ArrayBuffer; /** * The synthesis status. * @member TranslationSynthesisResult.prototype.reason * @function * @public * @returns {ResultReason} The synthesis status. */ readonly reason: ResultReason; } /** * Defines the possible reasons a recognition result might be generated. * @class ResultReason */ export enum ResultReason { /** * Indicates speech could not be recognized. More details * can be found in the NoMatchDetails object. * @member ResultReason.NoMatch */ NoMatch = 0, /** * Indicates that the recognition was canceled. More details * can be found using the CancellationDetails object. * @member ResultReason.Canceled */ Canceled = 1, /** * Indicates the speech result contains hypothesis text. * @member ResultReason.RecognizedSpeech */ RecognizingSpeech = 2, /** * Indicates the speech result contains final text that has been recognized. * Speech Recognition is now complete for this phrase. * @member ResultReason.RecognizedSpeech */ RecognizedSpeech = 3, /** * Indicates the intent result contains hypothesis text and intent. * @member ResultReason.RecognizingIntent */ RecognizingIntent = 4, /** * Indicates the intent result contains final text and intent. * Speech Recognition and Intent determination are now complete for this phrase. * @member ResultReason.RecognizedIntent */ RecognizedIntent = 5, /** * Indicates the translation result contains hypothesis text and its translation(s). * @member ResultReason.TranslatingSpeech */ TranslatingSpeech = 6, /** * Indicates the translation result contains final text and corresponding translation(s). * Speech Recognition and Translation are now complete for this phrase. * @member ResultReason.TranslatedSpeech */ TranslatedSpeech = 7, /** * Indicates the synthesized audio result contains a non-zero amount of audio data * @member ResultReason.SynthesizingAudio */ SynthesizingAudio = 8, /** * Indicates the synthesized audio is now complete for this phrase. * @member ResultReason.SynthesizingAudioCompleted */ SynthesizingAudioCompleted = 9 } /** * Speech configuration. * @class SpeechConfig */ export abstract class SpeechConfig { /** * Creates and initializes an instance. * @constructor */ protected constructor(); /** * Static instance of SpeechConfig returned by passing subscriptionKey and service region. * Note: Please use your LanguageUnderstanding subscription key in case you want to use the Intent recognizer. * @member SpeechConfig.fromSubscription * @function * @public * @param {string} subscriptionKey - The subscription key. * @param {string} region - The region name (see the <a href="https://aka.ms/csspeech/region">region page</a>). * @returns {SpeechConfig} The speech factory */ static fromSubscription(subscriptionKey: string, region: string): SpeechConfig; /** * Creates an instance of the speech config with specified endpoint and subscription key. * This method is intended only for users who use a non-standard service endpoint or parameters. * Note: Please use your LanguageUnderstanding subscription key in case you want to use the Intent recognizer. * Note: The query parameters specified in the endpoint URL are not changed, even if they are set by any other APIs. * For example, if language is defined in the uri as query parameter "language=de-DE", and also set by * SpeechConfig.speechRecognitionLanguage = "en-US", the language setting in uri takes precedence, * and the effective language is "de-DE". Only the parameters that are not specified in the * endpoint URL can be set by other APIs. * Note: To use authorization token with fromEndpoint, pass an empty string to the subscriptionKey in the * fromEndpoint method, and then set authorizationToken="token" on the created SpeechConfig instance to * use the authorization token. * @member SpeechConfig.fromEndpoint * @function * @public * @param {URL} endpoint - The service endpoint to connect to. * @param {string} subscriptionKey - The subscription key. If a subscription key is not specified, an authorization token must be set. * @returns {SpeechConfig} A speech factory instance. */ static fromEndpoint(endpoint: URL, subscriptionKey?: string): SpeechConfig; /** * Creates an instance of the speech factory with specified initial authorization token and region. * Note: The caller needs to ensure that the authorization token is valid. Before the authorization token * expires, the caller needs to refresh it by calling this setter with a new valid token. * Note: Please use a token derived from your LanguageUnderstanding subscription key in case you want * to use the Intent recognizer. As configuration values are copied when creating a new recognizer, * the new token value will not apply to recognizers that have already been created. For recognizers * that have been created before, you need to set authorization token of the corresponding recognizer * to refresh the token. Otherwise, the recognizers will encounter errors during recognition. * @member SpeechConfig.fromAuthorizationToken * @function * @public * @param {string} authorizationToken - The initial authorization token. * @param {string} region - The region name (see the <a href="https://aka.ms/csspeech/region">region page</a>). * @returns {SpeechConfig} A speech factory instance. */ static fromAuthorizationToken(authorizationToken: string, region: string): SpeechConfig; /** * Sets the proxy configuration. * Only relevant in Node.js environments. * Added in version 1.4.0. * @param proxyHostName The host name of the proxy server. * @param proxyPort The port number of the proxy server. */ abstract setProxy(proxyHostName: string, proxyPort: number): void; /** * Sets the proxy configuration. * On