### Required

[\[1\]](https://github.com/s-blu/obsidian-remember-scrollposition/blob/751635dae799712b18d338676f9a433a878a4d48/src/main.ts#L82-L82)[\[2\]](https://github.com/s-blu/obsidian-remember-scrollposition/blob/751635dae799712b18d338676f9a433a878a4d48/src/main.ts#L88-L88)[\[3\]](https://github.com/s-blu/obsidian-remember-scrollposition/blob/751635dae799712b18d338676f9a433a878a4d48/src/main.ts#L128-L132)
Promise returned in function argument where a void return was expected.

[\[1\]](https://github.com/s-blu/obsidian-remember-scrollposition/blob/751635dae799712b18d338676f9a433a878a4d48/src/main.ts#L82-L82)[\[2\]](https://github.com/s-blu/obsidian-remember-scrollposition/blob/751635dae799712b18d338676f9a433a878a4d48/src/main.ts#L88-L88)
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/s-blu/obsidian-remember-scrollposition/blob/751635dae799712b18d338676f9a433a878a4d48/src/main.ts#L109-L109)
This assertion is unnecessary since it does not change the type of the expression.

[\[1\]](https://github.com/s-blu/obsidian-remember-scrollposition/blob/751635dae799712b18d338676f9a433a878a4d48/src/main.ts#L128-L128)
Async arrow function has no 'await' expression.

[\[1\]](https://github.com/s-blu/obsidian-remember-scrollposition/blob/751635dae799712b18d338676f9a433a878a4d48/src/main.ts#L129-L129)[\[2\]](https://github.com/s-blu/obsidian-remember-scrollposition/blob/751635dae799712b18d338676f9a433a878a4d48/src/scrollposition-settings.ts#L37-L37)
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.



---

### Optional

