@backtrace/sdk-core
Version:
Backtrace-JavaScript SDK core library
10 lines (9 loc) • 603 B
TypeScript
import { BacktraceModule } from './BacktraceModule.js';
export type BacktraceModuleCtor<T extends BacktraceModule = BacktraceModule> = new (...args: never[]) => T;
export interface ReadonlyBacktraceModules extends ReadonlyMap<BacktraceModuleCtor, BacktraceModule> {
get<T extends BacktraceModule>(type: BacktraceModuleCtor<T>): T | undefined;
}
export interface BacktraceModules extends Map<BacktraceModuleCtor, BacktraceModule> {
set<T extends BacktraceModule>(type: BacktraceModuleCtor<T>, instance: T): this;
get<T extends BacktraceModule>(type: BacktraceModuleCtor<T>): T | undefined;
}