import { BaseClient } from "./clientBase"; export class WebApiClient extends BaseClient { constructor({ serverAdress, webapiToken }: { serverAdress: string; webapiToken: string }) { super({ serverAdress, webapiToken }); } public async initialize(): Promise { await this.refreshToken(); } public refreshToken(): Promise { return new Promise(async (resolve, reject) => { await this.http .get(`/webapi/retrieve`, { headers: { Authorization: `Bearer ${this.webapiToken}`, }, }) .then(async (response) => { const { accessToken } = response.data; this.setAccessToken(accessToken); resolve(); }) .catch((error) => { console.error("Error refreshing webapi token:", error); reject("failed token retrieve"); }); }); } }