[semantic-ui-api] Fix setting behavior return type.

This commit is contained in:
Leonard Thieu
2017-06-29 17:41:30 -04:00
parent 18c03e9b4b
commit e1ceafbaa4
2 changed files with 4 additions and 4 deletions

View File

@@ -98,8 +98,8 @@ declare namespace SemanticUI {
* Removes API settings from the page and all events
*/
(behavior: 'destroy'): JQuery;
<K extends keyof ApiSettings>(behavior: 'setting', name: K, value?: undefined): ApiSettings[K];
<K extends keyof ApiSettings>(behavior: 'setting', name: K, value: ApiSettings[K]): JQuery;
<K extends keyof ApiSettings>(behavior: 'setting', name: K, value?: undefined): ApiSettings._Impl[K];
<K extends keyof ApiSettings>(behavior: 'setting', name: K, value: ApiSettings._Impl[K]): JQuery;
(behavior: 'setting', value: ApiSettings): JQuery;
(settings?: ApiSettings): JQuery;
}

View File

@@ -18,8 +18,8 @@ function test_api_static() {
function test_api() {
const selector = '.ui.api';
$(selector).api('destroy'); // $ExpectType JQuery<HTMLElement>
$(selector).api('setting', 'debug', undefined) === true;
$(selector).api('setting', 'debug') === false;
$(selector).api('setting', 'debug', undefined); // $ExpectType boolean
$(selector).api('setting', 'debug'); // $ExpectType boolean
$(selector).api('setting', 'debug', true); // $ExpectType JQuery<HTMLElement>
// $ExpectType JQuery<HTMLElement>
$(selector).api('setting', {