### Required

[\[1\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/drive.ts#L124-L124)[\[2\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/drive.ts#L186-L186)[\[3\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/drive.ts#L249-L249)[\[4\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/drive.ts#L292-L292)[\[5\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/drive.ts#L319-L319)[\[6\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/drive.ts#L333-L333)[\[7\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/drive.ts#L431-L431)[\[8\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/drive.ts#L448-L448)[\[9\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/drive.ts#L950-L950)[\[10\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/drive.ts#L1016-L1016)[\[11\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/drive.ts#L1019-L1019)[\[12\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/errorManager.ts#L32-L32)[\[13\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/errorManager.ts#L99-L99)[\[14\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/ky.ts#L33-L33)[\[15\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/ky.ts#L34-L34)[\[16\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/ky.ts#L54-L54)[\[17\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/pull.ts#L112-L112)[\[18\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/pull.ts#L324-L324)[\[19\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/push.ts#L568-L568)[\[20\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/push.ts#L635-L635)[\[21\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/push.ts#L701-L701)
Unexpected any. Specify a different type.

[\[1\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/drive.ts#L154-L154)[\[2\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/drive.ts#L156-L158)[\[3\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/drive.ts#L198-L198)[\[4\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/drive.ts#L355-L355)
This assertion is unnecessary since it does not change the type of the expression.

[\[1\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/drive.ts#L191-L191)[\[2\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/drive.ts#L370-L370)[\[3\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/drive.ts#L405-L405)[\[4\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/drive.ts#L419-L419)[\[5\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/drive.ts#L559-L559)[\[6\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/ky.ts#L40-L40)
Unexpected console statement. Only these console methods are allowed: warn, error, debug.

[\[1\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/drive.ts#L575-L576)[\[2\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/drive.ts#L584-L585)
Empty block statement.

[\[1\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/drive.ts#L600-L600)[\[2\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/drive.ts#L613-L613)
Obsidian's configuration folder is not necessarily `.obsidian`, it can be configured by the user.

[\[1\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/ky.ts#L70-L70)[\[2\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/push.ts#L272-L272)[\[3\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/push.ts#L373-L373)[\[4\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/reset.ts#L36-L36)[\[5\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/main.ts#L55-L55)[\[6\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/main.ts#L70-L70)[\[7\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/main.ts#L79-L79)[\[8\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/main.ts#L87-L87)[\[9\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/main.ts#L338-L338)[\[10\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/main.ts#L359-L359)[\[11\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/main.ts#L389-L389)[\[12\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/main.ts#L409-L409)[\[13\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/main.ts#L410-L410)[\[14\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/main.ts#L413-L413)[\[15\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/main.ts#L440-L440)[\[16\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/main.ts#L447-L447)[\[17\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/main.ts#L448-L448)[\[18\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/main.ts#L451-L451)[\[19\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/main.ts#L472-L472)[\[20\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/main.ts#L476-L476)[\[21\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/main.ts#L482-L482)[\[22\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/main.ts#L495-L495)[\[23\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/main.ts#L502-L502)[\[24\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/main.ts#L522-L522)[\[25\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/main.ts#L538-L538)
Use sentence case for UI text.

[\[1\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/pull.ts#L164-L164)[\[2\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/pull.ts#L385-L385)[\[3\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/main.ts#L73-L73)[\[4\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/main.ts#L82-L82)[\[5\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/main.ts#L90-L90)[\[6\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/main.ts#L126-L133)[\[7\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/main.ts#L468-L468)
Promises must be awaited, end with a call to .catch, end with a call to .then with a rejection handler or be explicitly marked as ignored with the `void` operator.

[\[1\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/pull.ts#L329-L329)[\[2\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/pull.ts#L330-L330)
A method that is not declared with `this: void` may cause unintentional scoping of `this` when separated from its object.
Consider using an arrow function or explicitly `.bind()`ing the method to avoid calling the method with an unintended `this` value. 
If a function does not access `this`, it can be annotated with `this: void`.

[\[1\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/main.ts#L136-L138)
Promise-returning method provided where a void return was expected by extended/implemented type 'Plugin'.

[\[1\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/main.ts#L276-L278)
Expected an error object to be thrown.

[\[1\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/main.ts#L382-L382)
Async arrow function has no 'await' expression.

[\[1\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/main.ts#L479-L479)[\[2\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/main.ts#L526-L526)
Unexpected confirm.



---

### Optional

[\[1\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/drive.ts#L846-L846)
'filesToCreate' is assigned a value but never used.

[\[1\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/errorManager.ts#L2-L2)
'Notice' is defined but never used.

[\[1\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/errorManager.ts#L27-L27)
'getErrorFilePath' is assigned a value but never used.

[\[1\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/ky.ts#L69-L69)[\[2\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/main.ts#L358-L358)
'e' is defined but never used.

[\[1\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/pull.ts#L31-L31)
'localSize' is assigned a value but never used.

[\[1\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/push.ts#L8-L8)
'getSyncMessage' is defined but never used.

[\[1\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/push.ts#L11-L11)
'SyncProgress' is defined but never used.

[\[1\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/push.ts#L13-L13)
'ConfirmPushModal' is defined but never used.

[\[1\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/push.ts#L416-L416)[\[2\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/push.ts#L533-L533)
'completed' is assigned a value but never used.

[\[1\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/push.ts#L488-L488)
'parentExists' is assigned a value but never used.

[\[1\]](https://github.com/bosong2/GoogleDriveSync-ObsidianPlugin/blob/fbc052787c9f3f5a7bf4ecbfe5e649846354a558/helpers/reset.ts#L12-L12)
'TFolder' is defined but never used.

