mirror of
https://github.com/zhigang1992/DefinitelyTyped.git
synced 2026-04-18 12:08:59 +08:00
Merge pull request #23727 from birtles/pouchdb-bulkdocs-result
Fix the return type of pouchdb-core's bulkDocs to include Error values
This commit is contained in:
4
types/pouchdb-core/index.d.ts
vendored
4
types/pouchdb-core/index.d.ts
vendored
@@ -594,7 +594,7 @@ declare namespace PouchDB {
|
||||
*/
|
||||
bulkDocs<Model>(docs: Array<Core.PutDocument<Content & Model>>,
|
||||
options: Core.BulkDocsOptions | null,
|
||||
callback: Core.Callback<Core.Response[]>): void;
|
||||
callback: Core.Callback<Array<Core.Response | Core.Error>>): void;
|
||||
|
||||
/**
|
||||
* Create, update or delete multiple documents. The docs argument is an array of documents.
|
||||
@@ -604,7 +604,7 @@ declare namespace PouchDB {
|
||||
* Finally, to delete a document, include a _deleted parameter with the value true.
|
||||
*/
|
||||
bulkDocs<Model>(docs: Array<Core.PutDocument<Content & Model>>,
|
||||
options?: Core.BulkDocsOptions): Promise<Core.Response[]>;
|
||||
options?: Core.BulkDocsOptions): Promise<Array<Core.Response | Core.Error >>;
|
||||
|
||||
/** Compact the database */
|
||||
compact(options?: Core.CompactOptions): Promise<Core.Response>;
|
||||
|
||||
@@ -47,10 +47,19 @@ function testBulkDocs() {
|
||||
const model = { property: 'test' };
|
||||
const model2 = { property: 'test' };
|
||||
|
||||
const isError = (
|
||||
result: PouchDB.Core.Response | PouchDB.Core.Error
|
||||
): result is PouchDB.Core.Error => {
|
||||
return !!(<PouchDB.Core.Error> result).error;
|
||||
};
|
||||
|
||||
db.bulkDocs([model, model2]).then((result) => {
|
||||
result.forEach(({ ok, id, rev }) => {
|
||||
result.forEach(result => {
|
||||
if (!isError(result)) {
|
||||
const { ok, id, rev } = result;
|
||||
isString(id);
|
||||
isString(rev);
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
Reference in New Issue
Block a user