import type { Language } from '../common/enums/language'; import type { PowerduckStateInitArgs } from './powerduck-state'; import type { IPowerduckSystemResources } from './powerduck-system-resources'; import ChunkLoadRecovery from '../common/utils/chunk-load-recovery'; import { LanguageUtils } from '../common/utils/language-utils'; import PowerduckState from './powerduck-state'; export interface PoweduckInitFrameworkArgs { supportedLanguages?: Language[]; } export default class PowerduckInitializer { static initFramework(args?: PoweduckInitFrameworkArgs) { ChunkLoadRecovery.bindPreloadGuard(); if (args != null) { if (args.supportedLanguages?.length as number > 0) { LanguageUtils.supportedLanguages = args.supportedLanguages as Language[]; } } } static initState(resources: TResoures, args?: PowerduckStateInitArgs) { PowerduckState.initialize(resources, args); } }