# Interface: `IKernel` [@jupyterlite/kernel](../modules/jupyterlite_kernel.md).IKernel An interface for a kernel running in the browser. ## Hierarchy - `IObservableDisposable` ↳ **`IKernel`** ## Implemented by - [`BaseKernel`](../classes/jupyterlite_kernel.BaseKernel.md) ## Properties ### `disposed` > `Readonly` **`disposed`**: `ISignal`<[`IKernel`](jupyterlite_kernel.IKernel-1.md), > `void`\> A signal emitted when the object is disposed. #### Inherited from IObservableDisposable.disposed #### Defined in node_modules/@lumino/disposable/types/index.d.ts:34 ### `id` > `Readonly` **`id`**: `string` The id of the server-side kernel. #### Defined in [packages/kernel/src/tokens.ts:59](https://github.com/jupyterlite/jupyterlite/blob/7971e0aa/packages/kernel/src/tokens.ts#L59) ### `isDisposed` > `Readonly` **`isDisposed`**: `boolean` Test whether the object has been disposed. #### Notes This property is always safe to access. #### Inherited from IObservableDisposable.isDisposed #### Defined in node_modules/@lumino/disposable/types/index.d.ts:13 ### `location` > `Readonly` **`location`**: `string` The location in the virtual filesystem from which the kernel was started. #### Defined in [packages/kernel/src/tokens.ts:69](https://github.com/jupyterlite/jupyterlite/blob/7971e0aa/packages/kernel/src/tokens.ts#L69) ### `name` > `Readonly` **`name`**: `string` The name of the server-side kernel. #### Defined in [packages/kernel/src/tokens.ts:64](https://github.com/jupyterlite/jupyterlite/blob/7971e0aa/packages/kernel/src/tokens.ts#L64) ### `ready` > `Readonly` **`ready`**: `Promise`<`void`\> A promise that is fulfilled when the kernel is ready. #### Defined in [packages/kernel/src/tokens.ts:74](https://github.com/jupyterlite/jupyterlite/blob/7971e0aa/packages/kernel/src/tokens.ts#L74) ## Methods ### `dispose` > **`dispose`**(): `void` Dispose of the resources held by the object. #### Notes If the object's `dispose` method is called more than once, all calls made after the first will be a no-op. #### Undefined Behavior It is undefined behavior to use any functionality of the object after it has been disposed unless otherwise explicitly noted. #### Returns `void` #### Inherited from IObservableDisposable.dispose #### Defined in node_modules/@lumino/disposable/types/index.d.ts:25 ### `handleMessage` > **`handleMessage`**(`msg`): `Promise`<`void`\> Handle an incoming message from the client. #### Parameters | Name | Type | Description | | :---- | :------------------------- | :-------------------- | | `msg` | `IMessage`<`MessageType`\> | The message to handle | #### Returns `Promise`<`void`\> #### Defined in [packages/kernel/src/tokens.ts:81](https://github.com/jupyterlite/jupyterlite/blob/7971e0aa/packages/kernel/src/tokens.ts#L81)