## SystemJS API For setting SystemJS configuration see the [Configuration API](config-api.md) page. #### System.amdDefine Type: `Function` For backwards-compatibility with AMD environments, set `window.define = System.amdDefine`. #### System.amdRequire Type: `Function` For backwards-compatibility with AMD environments, set `window.require = System.amdRequire`. #### System.config Type: `Function` SystemJS configuration helper function. See the [Configuration API](config-api.md). #### System.constructor Type: `Function` This represents the System base class, which can be extended or reinstantiated to create a custom System instance. Example: ```javascript var clonedSystem = new System.constructor(); clonedSystem.baseURL = System.baseURL; clonedSystem.import('x'); // imports in a custom context ``` #### System.delete(moduleName) Type: `Function` Deletes a module from the registry by normalized name. ```javascript System.delete('http://site.com/normalized/module/name.js'); ``` #### System.get(moduleName) -> Module Type: `Function` Returns a module from the registry by normalized name. ```javascript System.get('http://site.com/normalized/module/name.js').exportedFunction(); ``` #### System.has(moduleName) -> Boolean Type: `Function` Returns whether a given module exists in the registry by normalized module name. ```javascript if (System.has('http://site.com/normalized/module/name.js')) { // ... } ``` #### System.import(moduleName [, normalizedParentName]) -> Promise(Module) Type: `Function` Loads a module by name taking an optional normalized parent name argument. Promise resolves to the module value. For loading relative to the current module, ES Modules define a `__moduleName` binding, so that: ```javascript System.import('./local', __moduleName); ``` In CommonJS modules the above would be `module.id` instead. This is non-standard, but coverse a use case that will be provided by the spec. #### System.newModule(Object) -> Module Type: `Function` Given a plain JavaScript object, return an equivalent `Module` object. Useful when writing a custom `instantiate` hook or using `System.set`. #### System.register([name ,] deps, declare) Type: `Function` Declaration function for defining modules of the `System.register` polyfill module format. [Read more on the format at the loader polyfill page](https://github.com/ModuleLoader/es6-module-loader/blob/v0.17.0/docs/system-register.md) #### System.registerDynamic([name ,] deps, executingRequire, declare) Type: `Function` Companion module format to `System.register` for non-ES6 modules. Provides a `