### Required

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/main.ts#L42-L42)[\[2\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/main.ts#L151-L151)[\[3\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/main.ts#L482-L482)[\[4\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L22-L22)[\[5\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L41-L41)[\[6\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L48-L48)[\[7\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L114-L114)[\[8\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L200-L200)[\[9\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L329-L329)[\[10\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L343-L343)[\[11\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L347-L347)[\[12\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L371-L371)[\[13\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L392-L392)[\[14\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L407-L407)[\[15\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L425-L425)[\[16\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L446-L446)[\[17\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L449-L449)[\[18\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L452-L452)[\[19\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L499-L499)[\[20\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L502-L502)[\[21\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L503-L503)[\[22\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L505-L505)[\[23\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L534-L534)[\[24\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L610-L610)[\[25\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L619-L619)[\[26\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L623-L623)[\[27\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L635-L635)[\[28\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L636-L636)[\[29\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L637-L637)[\[30\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L650-L650)[\[31\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L677-L677)[\[32\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L688-L688)[\[33\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L692-L692)[\[34\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L702-L702)[\[35\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L705-L705)[\[36\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L710-L710)[\[37\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L726-L726)[\[38\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L729-L729)[\[39\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L730-L730)[\[40\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L731-L731)[\[41\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L741-L741)[\[42\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L798-L798)[\[43\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L805-L805)[\[44\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L810-L810)[\[45\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L813-L813)[\[46\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L821-L821)[\[47\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L824-L824)[\[48\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L867-L867)[\[49\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L942-L942)[\[50\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L960-L960)[\[51\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/views/Modals.ts#L384-L384)[\[52\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/views/Modals.ts#L402-L402)[\[53\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/views/Modals.ts#L513-L513)[\[54\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/views/Modals.ts#L577-L577)[\[55\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/views/Modals.ts#L694-L694)[\[56\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/views/SidePanelView.ts#L34-L34)[\[57\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/views/SidePanelView.ts#L155-L155)[\[58\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/views/SidePanelView.ts#L183-L183)[\[59\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/views/SidePanelView.ts#L281-L281)[\[60\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/views/SidePanelView.ts#L327-L327)[\[61\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/views/SidePanelView.ts#L348-L348)[\[62\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/views/SidePanelView.ts#L461-L461)[\[63\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/views/SidePanelView.ts#L481-L481)
Use sentence case for UI text.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/main.ts#L43-L43)[\[2\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/main.ts#L65-L65)[\[3\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/main.ts#L84-L84)[\[4\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/main.ts#L91-L91)[\[5\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/main.ts#L97-L97)[\[6\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/main.ts#L184-L184)[\[7\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/main.ts#L197-L197)[\[8\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/main.ts#L213-L213)[\[9\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/main.ts#L254-L254)[\[10\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/main.ts#L313-L313)[\[11\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/main.ts#L353-L353)[\[12\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/main.ts#L399-L399)[\[13\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/main.ts#L409-L409)[\[14\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/main.ts#L422-L422)[\[15\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/main.ts#L450-L450)[\[16\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/main.ts#L534-L534)[\[17\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/SyncService.ts#L71-L71)[\[18\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/views/SidePanelView.ts#L455-L455)
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/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/main.ts#L101-L122)
Promise-returning method provided where a void return was expected by extended/implemented type 'Plugin'.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/main.ts#L144-L144)
Doing this will reassign the default.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/main.ts#L647-L647)[\[2\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/ApiInterface.ts#L7-L7)[\[3\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/ApiInterface.ts#L65-L65)[\[4\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/ApiInterface.ts#L66-L66)[\[5\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/ApiInterface.ts#L70-L70)[\[6\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/AuthService.ts#L9-L9)[\[7\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/SyncService.ts#L10-L10)[\[8\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/SyncService.ts#L14-L14)[\[9\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/SyncService.ts#L99-L99)[\[10\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/SyncService.ts#L121-L121)[\[11\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/SyncService.ts#L142-L142)[\[12\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/SyncService.ts#L162-L162)[\[13\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/SyncService.ts#L193-L193)[\[14\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/SyncService.ts#L250-L250)[\[15\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/utils.ts#L195-L195)[\[16\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/utils.ts#L228-L228)[\[17\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/utils.ts#L243-L243)
Unexpected any. Specify a different type.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/ApiInterface.ts#L79-L79)
Async method 'startServer' has no 'await' expression.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/ApiInterface.ts#L94-L94)
Async method 'stopServer' has no 'await' expression.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/ApiInterface.ts#L576-L576)
Async method 'handleSyncBidirectional' has no 'await' expression.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/AuthService.ts#L7-L7)[\[2\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/AuthService.ts#L11-L11)[\[3\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/AuthService.ts#L163-L163)[\[4\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/HttpServer.ts#L12-L12)[\[5\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/HttpServer.ts#L22-L22)
Unexpected undescribed directive comment. Include descriptions to explain why the comment is necessary.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/AuthService.ts#L7)
Unused eslint-disable directive (no problems were reported from '@typescript-eslint/no-explicit-any').

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/AuthService.ts#L7-L7)[\[2\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/AuthService.ts#L11-L11)[\[3\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/AuthService.ts#L163-L163)[\[4\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/HttpServer.ts#L12-L12)[\[5\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/HttpServer.ts#L22-L22)
Disabling '@typescript-eslint/no-explicit-any' is not allowed.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/HttpServer.ts#L212-L212)
Unnecessary escape character: \/.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/HttpServer.ts#L262-L262)
Async method 'handleGetStatus' has no 'await' expression.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/HttpServer.ts#L267-L267)
Async method 'handleGetRoles' has no 'await' expression.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/HttpServer.ts#L272-L272)
Async method 'handleGetRole' has no 'await' expression.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/HttpServer.ts#L282-L282)
Async method 'handleCreateRole' has no 'await' expression.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/HttpServer.ts#L291-L291)
Async method 'handleUpdateRole' has no 'await' expression.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/HttpServer.ts#L305-L305)
Async method 'handleDeleteRole' has no 'await' expression.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/HttpServer.ts#L315-L315)
Async method 'handleStartSession' has no 'await' expression.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/HttpServer.ts#L325-L325)
Async method 'handleSwitchSession' has no 'await' expression.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/HttpServer.ts#L335-L335)
Async method 'handleEndSession' has no 'await' expression.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/HttpServer.ts#L340-L340)
Async method 'handleGetSessions' has no 'await' expression.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/HttpServer.ts#L351-L351)
Async method 'handleAddNote' has no 'await' expression.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/HttpServer.ts#L360-L360)
Async method 'handleUpdateNote' has no 'await' expression.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/HttpServer.ts#L374-L374)
Async method 'handleDeleteNote' has no 'await' expression.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/HttpServer.ts#L384-L384)
Async method 'handleGetEvents' has no 'await' expression.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/HttpServer.ts#L401-L401)
Async method 'handleGetAnalytics' has no 'await' expression.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/HttpServer.ts#L415-L415)
Async method 'handleCreateApiKey' has no 'await' expression.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/HttpServer.ts#L433-L433)
Async method 'handleGetApiKeys' has no 'await' expression.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/HttpServer.ts#L442-L442)
Async method 'handleUpdateApiKey' has no 'await' expression.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/HttpServer.ts#L460-L460)
Async method 'handleDeleteApiKey' has no 'await' expression.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/HttpServer.ts#L484-L484)
Unexpected `await` of a non-Promise (non-"Thenable") value.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/HttpServer.ts#L491-L491)
Async method 'handleSyncPull' has no 'await' expression.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/SyncService.ts#L289-L289)
`substr` is deprecated. A legacy feature for browser compatibility

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L22-L22)[\[2\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L41-L41)[\[3\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L114-L114)[\[4\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L200-L200)[\[5\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L343-L343)[\[6\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L446-L446)[\[7\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L499-L499)[\[8\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L798-L798)
Use `new Setting(containerEl).setName(...).setHeading()` instead of creating HTML heading elements directly.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L130-L134)[\[2\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L144-L152)[\[3\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L171-L175)[\[4\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L185-L193)[\[5\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L240-L245)[\[6\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L255-L264)[\[7\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L295-L300)[\[8\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L310-L319)
Promise returned in function argument where a void return was expected.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L488-L488)[\[2\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L557-L557)
Async arrow function has no 'await' expression.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L628-L628)[\[2\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L697-L697)
Expected an assignment or function call and instead saw an expression.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/views/SidePanelView.ts#L41-L41)
Async method 'onOpen' has no 'await' expression.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/views/SidePanelView.ts#L68-L68)
Async method 'onClose' has no 'await' expression.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/views/SidePanelView.ts#L80-L80)
Creating and attaching "style" elements is not allowed. For loading CSS, use a "styles.css" file instead, which Obsidian loads for you.



---

### Optional

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/main.ts#L3-L3)
'TFile' is defined but never used.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/main.ts#L6-L6)
'RoleSwitchSettings' is defined but never used.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/main.ts#L12-L12)
'RoleSwitchEvent' is defined but never used.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/main.ts#L72-L72)[\[2\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/main.ts#L118-L118)[\[3\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/main.ts#L150-L150)[\[4\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/SyncService.ts#L88-L88)[\[5\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/icons.ts#L76-L76)[\[6\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L663-L663)[\[7\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L757-L757)[\[8\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L1017-L1017)[\[9\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/views/Modals.ts#L310-L310)[\[10\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/views/Modals.ts#L322-L322)[\[11\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/views/Modals.ts#L379-L379)[\[12\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/views/Modals.ts#L765-L765)[\[13\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/views/Modals.ts#L811-L811)[\[14\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/views/SidePanelView.ts#L62-L62)[\[15\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/views/SidePanelView.ts#L145-L145)[\[16\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/views/SidePanelView.ts#L162-L162)[\[17\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/views/SidePanelView.ts#L169-L169)[\[18\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/views/SidePanelView.ts#L176-L176)
'error' is defined but never used.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/ApiInterface.ts#L4-L4)
'Plugin' is defined but never used.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/ApiInterface.ts#L4-L4)
'RequestUrlParam' is defined but never used.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/ApiInterface.ts#L4-L4)
'requestUrl' is defined but never used.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/api/SyncService.ts#L146-L146)
'request' is assigned a value but never used.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/icons.ts#L3-L3)
'Platform' is defined but never used.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L462-L462)
'noKeysEl' is assigned a value but never used.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/settings/Settings.ts#L1013-L1013)
'newRole' is assigned a value but never used.

[\[1\]](https://github.com/zafrem/obsidian-role-switch/blob/e8b33009de6177d87836cfb38754a354290f5f56/src/views/SidePanelView.ts#L154-L154)
'headerTitle' is assigned a value but never used.

