<!-- Do not edit this file. It is automatically generated by API Documenter. -->

[Home](./index.md) &gt; [git-documentdb](./git-documentdb.md) &gt; [GitDocumentDB](./git-documentdb.gitdocumentdb.md)

## GitDocumentDB class

Main class of GitDocumentDB

<b>Signature:</b>

```typescript
export declare class GitDocumentDB implements IDocumentDB, CRUDInterface 
```
<b>Implements:</b> IDocumentDB, CRUDInterface

## Constructors

|  Constructor | Modifiers | Description |
|  --- | --- | --- |
|  [(constructor)(options)](./git-documentdb.gitdocumentdb._constructor_.md) |  | Constructor |

## Properties

|  Property | Modifiers | Type | Description |
|  --- | --- | --- | --- |
|  [defaultBranch](./git-documentdb.gitdocumentdb.defaultbranch.md) |  | (not declared) |  |
|  [fileExt](./git-documentdb.gitdocumentdb.fileext.md) |  | (not declared) | File extension of a repository document |
|  [gitAuthor](./git-documentdb.gitdocumentdb.gitauthor.md) |  | { readonly name: "GitDocumentDB"; readonly email: "gitddb@example.com"; } | Author name and email |
|  [isClosing](./git-documentdb.gitdocumentdb.isclosing.md) |  | boolean | DB is going to close |
|  [logger](./git-documentdb.gitdocumentdb.logger.md) |  | Logger | Logger |
|  [taskQueue](./git-documentdb.gitdocumentdb.taskqueue.md) |  | TaskQueue | Task queue |
|  [validator](./git-documentdb.gitdocumentdb.validator.md) |  | [Validator](./git-documentdb.validator.md) | Name validator |

## Methods

|  Method | Modifiers | Description |
|  --- | --- | --- |
|  [allDocs(options)](./git-documentdb.gitdocumentdb.alldocs.md) |  | Get all the documents |
|  [close(options)](./git-documentdb.gitdocumentdb.close.md) |  | Close a database |
|  [collection(collectionPath)](./git-documentdb.gitdocumentdb.collection.md) |  | Get a collection |
|  [create(remoteOptions)](./git-documentdb.gitdocumentdb.create.md) |  | Create and open a repository |
|  [dbName()](./git-documentdb.gitdocumentdb.dbname.md) |  | Get dbName |
|  [delete(id, options)](./git-documentdb.gitdocumentdb.delete.md) |  | This is an alias of remove() |
|  [delete(jsonDoc, options)](./git-documentdb.gitdocumentdb.delete_1.md) |  | This is an alias of remove() |
|  [destroy(options)](./git-documentdb.gitdocumentdb.destroy.md) |  | Destroy a database |
|  [get(docId, backNumber)](./git-documentdb.gitdocumentdb.get.md) |  | Get a document |
|  [getByRevision(fileSHA)](./git-documentdb.gitdocumentdb.getbyrevision.md) |  | Get a specific revision of a document |
|  [getDocHistory(docID)](./git-documentdb.gitdocumentdb.getdochistory.md) |  | Get revision history of a file from new to old |
|  [getDocWithMetaData(docId, backNumber)](./git-documentdb.gitdocumentdb.getdocwithmetadata.md) |  | Get a document with metadata |
|  [getRemoteURLs()](./git-documentdb.gitdocumentdb.getremoteurls.md) |  | getRemoteURLs |
|  [getSynchronizer(remoteURL)](./git-documentdb.gitdocumentdb.getsynchronizer.md) |  | Get synchronizer |
|  [isOpened()](./git-documentdb.gitdocumentdb.isopened.md) |  | Test if a database is opened |
|  [open()](./git-documentdb.gitdocumentdb.open.md) |  | Open an existing repository |
|  [put(jsonDoc, options)](./git-documentdb.gitdocumentdb.put.md) |  | Add a document |
|  [put(id, document, options)](./git-documentdb.gitdocumentdb.put_1.md) |  | Add a document |
|  [remove(id, options)](./git-documentdb.gitdocumentdb.remove.md) |  | Remove a document |
|  [remove(jsonDoc, options)](./git-documentdb.gitdocumentdb.remove_1.md) |  | Remove a document |
|  [repository()](./git-documentdb.gitdocumentdb.repository.md) |  | Get a current repository |
|  [sync(remoteURL, options)](./git-documentdb.gitdocumentdb.sync.md) |  | Synchronize with a remote repository |
|  [sync(options)](./git-documentdb.gitdocumentdb.sync_1.md) |  | Synchronize with a remote repository |
|  [unregisterRemote(remoteURL)](./git-documentdb.gitdocumentdb.unregisterremote.md) |  | Stop and unregister remote synchronization |
|  [workingDir()](./git-documentdb.gitdocumentdb.workingdir.md) |  | Get a full path of the current Git working directory |

