aboutsummaryrefslogtreecommitdiff
path: root/src/content/client/SettingClient.ts
blob: f89f3cd0ed9f2260d5b89d0fc6ec70a0bafbe24e (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import Settings from '../../shared/settings/Settings';
import * as messages from '../../shared/messages';

export default interface SettingClient {
  load(): Promise<Settings>;
}

export class SettingClientImpl {
  async load(): Promise<Settings> {
    const settings = await browser.runtime.sendMessage({
      type: messages.SETTINGS_QUERY,
    });
    return Settings.fromJSON(settings);
  }
}