@salutejs/jazz-sdk-electron
Version:
Jazz SDK Electron
53 lines (45 loc) • 1.32 kB
TypeScript
import { Module, ModuleDeclaration, Container } from 'ditox';
type AnyObject = Record<string, any>;
type LogLevel$1 = 'debug' | 'info' | 'warn' | 'error';
type LogMetadata = Readonly<Record<string, string>>;
type LogEvent$1 = Readonly<{
timestamp: number;
level: LogLevel$1;
tag: string;
messages: ReadonlyArray<unknown>;
meta?: LogMetadata;
}>;
type LogLevel = LogLevel$1;
type LogEvent = LogEvent$1;
/**
* Jazz SDK Plugin provides additional features.
*/
type JazzSdkPlugin<T extends Module<AnyObject> = Module<AnyObject>> = Promise<
() => {
key: string | undefined;
module: JazzSdkModuleDeclaration<T>;
}
>;
type JazzSdkModuleDeclaration<
T extends JazzSdkModule<AnyObject> = JazzSdkModule<AnyObject>,
> = ModuleDeclaration<T>;
type JazzSdkModule<T extends AnyObject = AnyObject> = Module<T>;
type JazzSdkAdditionalPlugins = ReadonlyArray<JazzSdkPlugin>;
type JazzSdkElectronMainOptions = {
container?: Container;
plugins?: JazzSdkAdditionalPlugins;
};
type JazzSdkElectronMain = {
container: Container;
destroy: () => void;
};
declare const createJazzSdkElectronMain: (
options?: JazzSdkElectronMainOptions,
) => Promise<JazzSdkElectronMain>;
export {
type JazzSdkElectronMainOptions,
type JazzSdkPlugin,
type LogEvent,
type LogLevel,
createJazzSdkElectronMain,
};