@@ -69,23 +69,27 @@ class LanguageTranslatorV3 extends BaseService {
6969 * @param {Object } params - The parameters to send to the service.
7070 * @param {string[] } params.text - Input text in UTF-8 encoding. Multiple entries will result in multiple translations
7171 * in the response.
72- * @param {string } [params.model_id] - Model ID of the translation model to use. If this is specified, the **source**
73- * and **target** parameters will be ignored. The method requires either a model ID or both the **source** and
74- * **target** parameters.
75- * @param {string } [params.source] - Language code of the source text language. Use with `target` as an alternative
76- * way to select a translation model. When `source` and `target` are set, and a model ID is not set, the system
77- * chooses a default model for the language pair (usually the model based on the news domain).
78- * @param {string } [params.target] - Language code of the translation target language. Use with source as an
79- * alternative way to select a translation model.
72+ * @param {string } [params.model_id] - A globally unique string that identifies the underlying model that is used for
73+ * translation.
74+ * @param {string } [params.source] - Translation source language code.
75+ * @param {string } [params.target] - Translation target language code.
8076 * @param {Object } [params.headers] - Custom request headers
8177 * @param {Function } [callback] - The callback that handles the response.
8278 * @returns {NodeJS.ReadableStream|void }
8379 */
84- public translate ( params : LanguageTranslatorV3 . TranslateParams , callback ?: LanguageTranslatorV3 . Callback < LanguageTranslatorV3 . TranslationResult > ) : NodeJS . ReadableStream | void {
80+ public translate ( params : LanguageTranslatorV3 . TranslateParams , callback ?: LanguageTranslatorV3 . Callback < LanguageTranslatorV3 . TranslationResult > ) : NodeJS . ReadableStream | Promise < any > | void {
8581 const _params = extend ( { } , params ) ;
86- const _callback = ( callback ) ? callback : ( ) => { /* noop */ } ;
82+ const _callback = callback ;
8783 const requiredParams = [ 'text' ] ;
8884
85+ if ( ! _callback ) {
86+ return new Promise ( ( resolve , reject ) => {
87+ this . translate ( params , ( err , bod , res ) => {
88+ err ? reject ( err ) : _params . return_response ? resolve ( res ) : resolve ( bod ) ;
89+ } ) ;
90+ } ) ;
91+ }
92+
8993 const missingParams = getMissingParams ( _params , requiredParams ) ;
9094 if ( missingParams ) {
9195 return _callback ( missingParams ) ;
@@ -131,11 +135,19 @@ class LanguageTranslatorV3 extends BaseService {
131135 * @param {Function } [callback] - The callback that handles the response.
132136 * @returns {NodeJS.ReadableStream|void }
133137 */
134- public identify ( params : LanguageTranslatorV3 . IdentifyParams , callback ?: LanguageTranslatorV3 . Callback < LanguageTranslatorV3 . IdentifiedLanguages > ) : NodeJS . ReadableStream | void {
138+ public identify ( params : LanguageTranslatorV3 . IdentifyParams , callback ?: LanguageTranslatorV3 . Callback < LanguageTranslatorV3 . IdentifiedLanguages > ) : NodeJS . ReadableStream | Promise < any > | void {
135139 const _params = extend ( { } , params ) ;
136- const _callback = ( callback ) ? callback : ( ) => { /* noop */ } ;
140+ const _callback = callback ;
137141 const requiredParams = [ 'text' ] ;
138142
143+ if ( ! _callback ) {
144+ return new Promise ( ( resolve , reject ) => {
145+ this . identify ( params , ( err , bod , res ) => {
146+ err ? reject ( err ) : _params . return_response ? resolve ( res ) : resolve ( bod ) ;
147+ } ) ;
148+ } ) ;
149+ }
150+
139151 const missingParams = getMissingParams ( _params , requiredParams ) ;
140152 if ( missingParams ) {
141153 return _callback ( missingParams ) ;
@@ -171,9 +183,17 @@ class LanguageTranslatorV3 extends BaseService {
171183 * @param {Function } [callback] - The callback that handles the response.
172184 * @returns {NodeJS.ReadableStream|void }
173185 */
174- public listIdentifiableLanguages ( params ?: LanguageTranslatorV3 . ListIdentifiableLanguagesParams , callback ?: LanguageTranslatorV3 . Callback < LanguageTranslatorV3 . IdentifiableLanguages > ) : NodeJS . ReadableStream | void {
186+ public listIdentifiableLanguages ( params ?: LanguageTranslatorV3 . ListIdentifiableLanguagesParams , callback ?: LanguageTranslatorV3 . Callback < LanguageTranslatorV3 . IdentifiableLanguages > ) : NodeJS . ReadableStream | Promise < any > | void {
175187 const _params = ( typeof params === 'function' && ! callback ) ? { } : extend ( { } , params ) ;
176- const _callback = ( typeof params === 'function' && ! callback ) ? params : ( callback ) ? callback : ( ) => { /* noop */ } ;
188+ const _callback = ( typeof params === 'function' && ! callback ) ? params : callback ;
189+
190+ if ( ! _callback ) {
191+ return new Promise ( ( resolve , reject ) => {
192+ this . listIdentifiableLanguages ( params , ( err , bod , res ) => {
193+ err ? reject ( err ) : _params . return_response ? resolve ( res ) : resolve ( bod ) ;
194+ } ) ;
195+ } ) ;
196+ }
177197
178198 const parameters = {
179199 options : {
@@ -231,11 +251,19 @@ class LanguageTranslatorV3 extends BaseService {
231251 * @param {Function } [callback] - The callback that handles the response.
232252 * @returns {NodeJS.ReadableStream|void }
233253 */
234- public createModel ( params : LanguageTranslatorV3 . CreateModelParams , callback ?: LanguageTranslatorV3 . Callback < LanguageTranslatorV3 . TranslationModel > ) : NodeJS . ReadableStream | void {
254+ public createModel ( params : LanguageTranslatorV3 . CreateModelParams , callback ?: LanguageTranslatorV3 . Callback < LanguageTranslatorV3 . TranslationModel > ) : NodeJS . ReadableStream | Promise < any > | void {
235255 const _params = extend ( { } , params ) ;
236- const _callback = ( callback ) ? callback : ( ) => { /* noop */ } ;
256+ const _callback = callback ;
237257 const requiredParams = [ 'base_model_id' ] ;
238258
259+ if ( ! _callback ) {
260+ return new Promise ( ( resolve , reject ) => {
261+ this . createModel ( params , ( err , bod , res ) => {
262+ err ? reject ( err ) : _params . return_response ? resolve ( res ) : resolve ( bod ) ;
263+ } ) ;
264+ } ) ;
265+ }
266+
239267 const missingParams = getMissingParams ( _params , requiredParams ) ;
240268 if ( missingParams ) {
241269 return _callback ( missingParams ) ;
@@ -288,11 +316,19 @@ class LanguageTranslatorV3 extends BaseService {
288316 * @param {Function } [callback] - The callback that handles the response.
289317 * @returns {NodeJS.ReadableStream|void }
290318 */
291- public deleteModel ( params : LanguageTranslatorV3 . DeleteModelParams , callback ?: LanguageTranslatorV3 . Callback < LanguageTranslatorV3 . DeleteModelResult > ) : NodeJS . ReadableStream | void {
319+ public deleteModel ( params : LanguageTranslatorV3 . DeleteModelParams , callback ?: LanguageTranslatorV3 . Callback < LanguageTranslatorV3 . DeleteModelResult > ) : NodeJS . ReadableStream | Promise < any > | void {
292320 const _params = extend ( { } , params ) ;
293- const _callback = ( callback ) ? callback : ( ) => { /* noop */ } ;
321+ const _callback = callback ;
294322 const requiredParams = [ 'model_id' ] ;
295323
324+ if ( ! _callback ) {
325+ return new Promise ( ( resolve , reject ) => {
326+ this . deleteModel ( params , ( err , bod , res ) => {
327+ err ? reject ( err ) : _params . return_response ? resolve ( res ) : resolve ( bod ) ;
328+ } ) ;
329+ } ) ;
330+ }
331+
296332 const missingParams = getMissingParams ( _params , requiredParams ) ;
297333 if ( missingParams ) {
298334 return _callback ( missingParams ) ;
@@ -330,11 +366,19 @@ class LanguageTranslatorV3 extends BaseService {
330366 * @param {Function } [callback] - The callback that handles the response.
331367 * @returns {NodeJS.ReadableStream|void }
332368 */
333- public getModel ( params : LanguageTranslatorV3 . GetModelParams , callback ?: LanguageTranslatorV3 . Callback < LanguageTranslatorV3 . TranslationModel > ) : NodeJS . ReadableStream | void {
369+ public getModel ( params : LanguageTranslatorV3 . GetModelParams , callback ?: LanguageTranslatorV3 . Callback < LanguageTranslatorV3 . TranslationModel > ) : NodeJS . ReadableStream | Promise < any > | void {
334370 const _params = extend ( { } , params ) ;
335- const _callback = ( callback ) ? callback : ( ) => { /* noop */ } ;
371+ const _callback = callback ;
336372 const requiredParams = [ 'model_id' ] ;
337373
374+ if ( ! _callback ) {
375+ return new Promise ( ( resolve , reject ) => {
376+ this . getModel ( params , ( err , bod , res ) => {
377+ err ? reject ( err ) : _params . return_response ? resolve ( res ) : resolve ( bod ) ;
378+ } ) ;
379+ } ) ;
380+ }
381+
338382 const missingParams = getMissingParams ( _params , requiredParams ) ;
339383 if ( missingParams ) {
340384 return _callback ( missingParams ) ;
@@ -376,9 +420,17 @@ class LanguageTranslatorV3 extends BaseService {
376420 * @param {Function } [callback] - The callback that handles the response.
377421 * @returns {NodeJS.ReadableStream|void }
378422 */
379- public listModels ( params ?: LanguageTranslatorV3 . ListModelsParams , callback ?: LanguageTranslatorV3 . Callback < LanguageTranslatorV3 . TranslationModels > ) : NodeJS . ReadableStream | void {
423+ public listModels ( params ?: LanguageTranslatorV3 . ListModelsParams , callback ?: LanguageTranslatorV3 . Callback < LanguageTranslatorV3 . TranslationModels > ) : NodeJS . ReadableStream | Promise < any > | void {
380424 const _params = ( typeof params === 'function' && ! callback ) ? { } : extend ( { } , params ) ;
381- const _callback = ( typeof params === 'function' && ! callback ) ? params : ( callback ) ? callback : ( ) => { /* noop */ } ;
425+ const _callback = ( typeof params === 'function' && ! callback ) ? params : callback ;
426+
427+ if ( ! _callback ) {
428+ return new Promise ( ( resolve , reject ) => {
429+ this . listModels ( params , ( err , bod , res ) => {
430+ err ? reject ( err ) : _params . return_response ? resolve ( res ) : resolve ( bod ) ;
431+ } ) ;
432+ } ) ;
433+ }
382434
383435 const query = {
384436 'source' : _params . source ,
@@ -440,25 +492,28 @@ namespace LanguageTranslatorV3 {
440492 export interface TranslateParams {
441493 /** Input text in UTF-8 encoding. Multiple entries will result in multiple translations in the response. */
442494 text : string [ ] ;
443- /** Model ID of the translation model to use. If this is specified, the **source** and **target** parameters will be ignored. The method requires either a model ID or both the **source** and **target** parameters . */
495+ /** A globally unique string that identifies the underlying model that is used for translation . */
444496 model_id ?: string ;
445- /** Language code of the source text language. Use with `target` as an alternative way to select a translation model. When `source` and `target` are set, and a model ID is not set, the system chooses a default model for the language pair (usually the model based on the news domain) . */
497+ /** Translation source language code . */
446498 source ?: string ;
447- /** Language code of the translation target language. Use with source as an alternative way to select a translation model . */
499+ /** Translation target language code . */
448500 target ?: string ;
449501 headers ?: Object ;
502+ return_response ?: boolean ;
450503 }
451504
452505 /** Parameters for the `identify` operation. */
453506 export interface IdentifyParams {
454507 /** Input text in UTF-8 format. */
455508 text : string ;
456509 headers ?: Object ;
510+ return_response ?: boolean ;
457511 }
458512
459513 /** Parameters for the `listIdentifiableLanguages` operation. */
460514 export interface ListIdentifiableLanguagesParams {
461515 headers ?: Object ;
516+ return_response ?: boolean ;
462517 }
463518
464519 /** Parameters for the `createModel` operation. */
@@ -476,20 +531,23 @@ namespace LanguageTranslatorV3 {
476531 /** The filename for parallel_corpus. */
477532 parallel_corpus_filename ?: string ;
478533 headers ?: Object ;
534+ return_response ?: boolean ;
479535 }
480536
481537 /** Parameters for the `deleteModel` operation. */
482538 export interface DeleteModelParams {
483539 /** Model ID of the model to delete. */
484540 model_id : string ;
485541 headers ?: Object ;
542+ return_response ?: boolean ;
486543 }
487544
488545 /** Parameters for the `getModel` operation. */
489546 export interface GetModelParams {
490547 /** Model ID of the model to get. */
491548 model_id : string ;
492549 headers ?: Object ;
550+ return_response ?: boolean ;
493551 }
494552
495553 /** Parameters for the `listModels` operation. */
@@ -501,6 +559,7 @@ namespace LanguageTranslatorV3 {
501559 /** If the default parameter isn't specified, the service will return all models (default and non-default) for each language pair. To return only default models, set this to `true`. To return only non-default models, set this to `false`. There is exactly one default model per language pair, the IBM provided base model. */
502560 default_models ?: boolean ;
503561 headers ?: Object ;
562+ return_response ?: boolean ;
504563 }
505564
506565 /*************************
0 commit comments