Skip to content
This repository was archived by the owner on Mar 11, 2022. It is now read-only.

Commit 31a42ad

Browse files
committed
Update type definitions
1 parent 4f28966 commit 31a42ad

File tree

2 files changed

+41
-19
lines changed

2 files changed

+41
-19
lines changed

types/index.d.ts

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
// limitations under the License.
1414

1515
import * as nano from 'nano';
16-
import { Request, CoreOptions } from "request";
16+
import CoreOptions from "request";
1717

1818
declare function cloudant(
1919
config: cloudant.Configuration | string,
@@ -76,10 +76,10 @@ declare namespace cloudant {
7676

7777
interface Query {
7878
// https://console.bluemix.net/docs/services/Cloudant/api/cloudant_query.html#query
79-
(definition?: any, callback?: Callback<any>): Request;
79+
(definition?: any, callback?: Callback<any>): Promise<any>;
8080

8181
// https://console.bluemix.net/docs/services/Cloudant/api/cloudant_query.html#deleting-an-index
82-
del(spec: QueryDeleteSpec, callback?: Callback<any>): Request;
82+
del(spec: QueryDeleteSpec, callback?: Callback<any>): Promise<any>;
8383
}
8484

8585
interface QueryDeleteSpec {
@@ -114,25 +114,25 @@ declare namespace cloudant {
114114
scope(db: string): DocumentScope<any>;
115115

116116
// https://console.bluemix.net/docs/services/Cloudant/api/vhosts.html#creating-a-virtual-host
117-
add_virtual_host(virtualHost: VirtualHost, callback?: Callback<any>): Request;
117+
add_virtual_host(virtualHost: VirtualHost, callback?: Callback<any>): Promise<any>;
118118

119119
// https://console.bluemix.net/docs/services/Cloudant/api/vhosts.html#deleting-a-virtual-host
120-
delete_virtual_host(virtualHost: VirtualHost, callback?: Callback<any>): Request;
120+
delete_virtual_host(virtualHost: VirtualHost, callback?: Callback<any>): Promise<any>;
121121

122122
// https://console.bluemix.net/docs/services/Cloudant/api/authorization.html#api-keys
123-
generate_api_key(callback?: Callback<ApiKey>): Request;
123+
generate_api_key(callback?: Callback<ApiKey>): Promise<any>;
124124

125125
// https://console.bluemix.net/docs/services/Cloudant/api/cors.html#reading-the-cors-configuration
126-
get_cors(callback?: Callback<any>): Request;
126+
get_cors(callback?: Callback<any>): Promise<any>;
127127

128128
// https://console.bluemix.net/docs/services/Cloudant/api/vhosts.html#listing-virtual-hosts
129-
get_virtual_hosts(callback?: Callback<any>): Request;
129+
get_virtual_hosts(callback?: Callback<any>): Promise<any>;
130130

131131
// https://console.bluemix.net/docs/services/Cloudant/api/account.html#ping
132-
ping(callback?: Callback<any>): Request;
132+
ping(callback?: Callback<any>): Promise<any>;
133133

134134
// https://console.bluemix.net/docs/services/Cloudant/api/cors.html#setting-the-cors-configuration
135-
set_cors(cors: CORS, callback?: Callback<any>): Request;
135+
set_cors(cors: CORS, callback?: Callback<any>): Promise<any>;
136136
}
137137

138138
// Document Scope
@@ -143,35 +143,35 @@ declare namespace cloudant {
143143
index: Query;
144144

145145
// https://console.bluemix.net/docs/services/Cloudant/api/document.html#the-_bulk_get-endpoint
146-
bulk_get(options: nano.BulkModifyDocsWrapper, callback?: Callback<any>): Request;
146+
bulk_get(options: nano.BulkModifyDocsWrapper, callback?: Callback<any>): Promise<any>;
147147

148148
// https://console.bluemix.net/docs/services/Cloudant/api/cloudant-geo.html#cloudant-geospatial
149149
geo(
150150
designname: string,
151151
docname: string,
152152
params: GeoParams,
153153
callback?: Callback<GeoResult>
154-
): Request;
154+
): Promise<any>;
155155

156156
// https://console.bluemix.net/docs/services/Cloudant/api/authorization.html#viewing-permissions
157-
get_security(callback?: Callback<Security>): Request;
157+
get_security(callback?: Callback<Security>): Promise<any>;
158158

159159
// https://console.bluemix.net/docs/services/Cloudant/api/search.html
160160
search(
161161
designname: string,
162162
searchname: string,
163163
params: SearchParams,
164164
callback: Callback<any>
165-
): Request;
165+
): Promise<any>;
166166
search(
167167
designname: string,
168168
searchname: string,
169169
params: any,
170170
callback?: Callback<any>
171-
): Request;
171+
): Promise<any>;
172172

173173
// https://console.bluemix.net/docs/services/Cloudant/api/authorization.html#modifying-permissions
174-
set_security(Security: Security, callback?: Callback<any>): Request;
174+
set_security(Security: Security, callback?: Callback<any>): Promise<any>;
175175
}
176176
}
177177

types/tests.ts

Lines changed: 25 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -45,8 +45,10 @@ cloudant(config, (error, client, pong) => {
4545
const instance = cloudant('http://localhost:5984');
4646

4747
instance.ping((pong) => {});
48+
instance.ping().then((pong) => {});
4849

4950
instance.generate_api_key((error, key) => {});
51+
instance.generate_api_key().then((key) => {});
5052

5153
const cors: cloudant.CORS = {
5254
allow_credentials: true,
@@ -55,16 +57,24 @@ const cors: cloudant.CORS = {
5557
};
5658

5759
instance.set_cors(cors, (error, data) => {});
60+
instance.set_cors(cors).then((data) => {});
61+
5862
instance.get_cors((error, data) => {});
63+
instance.get_cors().then((data) => {});
5964

6065
const virtualHost: cloudant.VirtualHost = {
6166
host: 'www.example.com',
6267
path: 'the-path'
6368
};
6469

6570
instance.add_virtual_host(virtualHost, (error, resp) => {});
71+
instance.add_virtual_host(virtualHost).then((resp) => {});
72+
6673
instance.get_virtual_hosts((error, hosts) => {});
74+
instance.get_virtual_hosts().then((hosts) => {});
75+
6776
instance.delete_virtual_host(virtualHost, (error, resp) => {});
77+
instance.delete_virtual_host(virtualHost).then((resp) => {});
6878

6979
/*
7080
* Document Scope
@@ -77,21 +87,26 @@ const docs: nano.BulkModifyDocsWrapper = {
7787
};
7888

7989
mydb.bulk_get(docs, (results) => {});
90+
mydb.bulk_get(docs).then((results) => {});
8091

8192
const security: cloudant.Security = {
8293
nobody: [],
8394
nodejs : [ '_reader', '_writer', '_admin', '_replicator' ]
8495
};
8596

8697
mydb.set_security(security, (error, resp) => {});
98+
mydb.set_security(security).then((resp) => {});
99+
87100
mydb.get_security((err, resp) => {});
101+
mydb.get_security().then((resp) => {});
88102

89103
const params: cloudant.SearchParams = {
90104
limit: 10,
91105
q: 'bird:*'
92106
};
93107

94108
mydb.search('design', 'doc', params, (err, resp) => {});
109+
mydb.search('design', 'doc', params).then((resp) => {});
95110

96111
const geoParams: cloudant.GeoParams = {
97112
include_docs: true,
@@ -100,20 +115,27 @@ const geoParams: cloudant.GeoParams = {
100115
};
101116

102117
mydb.geo('design', 'docname', geoParams, (err, result) => {});
118+
mydb.geo('design', 'docname', geoParams).then((result) => {});
103119

104120
const myIndex = {
105121
index: { fields: [ 'foo' ] },
106122
name: 'foo-index',
107123
type: 'json'
108124
};
109125

110-
mydb.index(myIndex, (err, resp) => {}); // create index
126+
// Create an index.
127+
mydb.index(myIndex, (err, resp) => {});
128+
mydb.index(myIndex).then((resp) => {});
111129

112-
mydb.index((err: any, resp: any) => {}); // see all indexes
130+
// See all indexes.
131+
mydb.index((err: any, resp: any) => {});
132+
mydb.index().then((resp) => {});
113133

114134
const myDeleteSpec: cloudant.QueryDeleteSpec = {
115135
ddoc: '_design/1f003ce73056238720c2e8f7da545390a8ea1dc5',
116136
name: 'foo-index'
117137
};
118138

119-
mydb.index.del(myDeleteSpec, (err, resp) => {}); // delete index
139+
// Delete an index.
140+
mydb.index.del(myDeleteSpec, (err, resp) => {});
141+
mydb.index.del(myDeleteSpec).then((resp) => {});

0 commit comments

Comments
 (0)