# Class: `KernelSpecs` [@jupyterlite/kernel](../modules/jupyterlite_kernel.md).KernelSpecs A class to handle requests to /api/kernelspecs ## Implements - [`IKernelSpecs`](../modules/jupyterlite_kernel.md#ikernelspecs) ## Constructors ### `constructor` > > **`new KernelSpecs`**() ## Properties ### `_factories` > > `Private` **`_factories`**: `Map`<`string`, [`KernelFactory`](../modules/jupyterlite_kernel.KernelSpecs.md#kernelfactory)\> #### Defined in [packages/kernel/src/kernelspecs.ts:59](https://github.com/jupyterlite/jupyterlite/blob/f79c8d5/packages/kernel/src/kernelspecs.ts#L59) ### `_specs` > > `Private` **`_specs`**: `Map`<`string`, `ISpecModel`\> #### Defined in [packages/kernel/src/kernelspecs.ts:58](https://github.com/jupyterlite/jupyterlite/blob/f79c8d5/packages/kernel/src/kernelspecs.ts#L58) ## Accessors ### `defaultKernelName` > > `get` **`defaultKernelName`**(): `string` Get the default kernel name. #### Returns `string` #### Implementation of IKernelSpecs.defaultKernelName #### Defined in [packages/kernel/src/kernelspecs.ts:28](https://github.com/jupyterlite/jupyterlite/blob/f79c8d5/packages/kernel/src/kernelspecs.ts#L28) ### `factories` > > `get` **`factories`**(): [`KernelFactories`](../modules/jupyterlite_kernel.KernelSpecs.md#kernelfactories) Get the kernel factories for the current kernels. #### Returns [`KernelFactories`](../modules/jupyterlite_kernel.KernelSpecs.md#kernelfactories) #### Implementation of IKernelSpecs.factories #### Defined in [packages/kernel/src/kernelspecs.ts:43](https://github.com/jupyterlite/jupyterlite/blob/f79c8d5/packages/kernel/src/kernelspecs.ts#L43) ### `specs` > > `get` **`specs`**(): ``null`` \| `ISpecModels` Get the kernel specs. #### Returns ``null`` \| `ISpecModels` #### Implementation of IKernelSpecs.specs #### Defined in [packages/kernel/src/kernelspecs.ts:14](https://github.com/jupyterlite/jupyterlite/blob/f79c8d5/packages/kernel/src/kernelspecs.ts#L14) ## Methods ### `register` > > **`register`**(`options`): `void` Register a new kernel. #### Parameters | Name | Type | Description | | :------ | :------ | :------ | | `options` | [`IKernelOptions`](../interfaces/jupyterlite_kernel.KernelSpecs.IKernelOptions.md) | The options to register a new kernel. | #### Returns `void` #### Implementation of IKernelSpecs.register #### Defined in [packages/kernel/src/kernelspecs.ts:52](https://github.com/jupyterlite/jupyterlite/blob/f79c8d5/packages/kernel/src/kernelspecs.ts#L52)