can i set variables on the scope of the class to be used later?
example
class TestClass {
    #key = '';
    #reference = '';
    #onReturn = () => {};
    constructor({ key } = {}) {
        this.#key = key || this.#key;
        this.#onReturn = onReturn || this.#onReturn;
    }
    login(username, password) {
        this.#submit(username, password);
    };
    #submit(username, password) {
        fetch(
            `/login/${this.#key}`,
        )
            .then(response => response.json())
            .then((json) => {
                this.#handleResponse(json);
            })
    };
    #handleResponse(json) {
        this.#reference = json.reference;
        this.#onReturn();
    };
    token() {
        console.log(this.#key, this.#reference); // "blabla", empty
    };
};
const Test = new TestClass({ // initializing the class
    key: 'blabla',
    onReturn: tokenSubmit
});
const onLoginSubmit = () => {
    Test.login(username, password); // running a fetch which will set a private var
};
const tokenSubmit = () => {
    Test.token(); // private var returns empty
};
which has two public methods login and token where the token should log the key and the reference
as a result i do get the key which was set on the constructor but the reference which was set while handling a fetch returns empty
 
    