import { SystemServices } from '../services'; import StoreFront from '../storefront'; import Configuration from './configuration'; import Service from './service'; export default class System { app: StoreFront; constructor(app: StoreFront); /** * start services, fire up the flux-capacitor, initialize riot */ bootstrap(services: Service.Constructor.Map, config: Configuration): void; initConfig(config: Configuration): Configuration; initRiot(): void; initFlux(): void; createServices(services: Service.Constructor.Map): void; /** * initialize all core and user-defined services */ initServices(): void; /** * initialize the core riot mixin */ initMixin(): void; /** * initialize the mixins supplied in the config */ initConfigMixins(): void; /** * register any tags that were registered before StoreFront started */ registerTags(): void; static buildServices(app: StoreFront, services: Service.Constructor.Map, config: any): SystemServices; static extractUserServices(services: { [key: string]: any; }): Service.Constructor.Map; }