@euirim/microsoft-cognitiveservices-speech-sdk
Version:
Microsoft Cognitive Services Speech SDK for JavaScript
1,184 lines (1,161 loc) • 181 kB
TypeScript
// 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