@magicbell/core
Version:
Official MagicBell API wrapper
36 lines (35 loc) • 932 B
TypeScript
import ConfigRepository from './ConfigRepository.js';
import { Channels, Inbox, WebSocket } from './IRemoteConfig.js';
/**
* A configuration object.
*
* @example
* const config = new Config({ apiKey, userEmail, userKey });
* config.fetch();
*/
export default class Config {
apiKey: string;
userEmail?: string;
userExternalId?: string;
userKey?: string;
apiSecret?: string;
ws: WebSocket;
inbox: Inbox;
channels: Channels;
webPushNotifications: any;
repo: ConfigRepository;
xhrFetchState: 'idle' | 'pending' | 'success' | 'failure';
constructor(args: Partial<{
apiKey: string;
userEmail: string;
userExternalId: string;
userKey: string;
apiSecret: string;
ws: WebSocket;
}>);
/**
* Fetch the configuration for the current user from the MagicBell server.
*/
fetch(): Promise<void>;
set(json?: {}): void;
}