# Class SDKObject`Abstract`

Base class for all SDK objects.

This class provides a base implementation for all SDK objects. It handles event emission, promise management, and initialization.

This object is used to ensure that an SRE instance is initialized, and if not, create one with default settings.

#### Hierarchy (View Summary)

- SDKObject
  - Agent
  - CacheInstance
  - Chat
  - LLMInstance
  - SchedulerInstance
  - StorageInstance
  - VaultInstance
  - VectorDBInstance

- Defined in src/Core/SDKObject.class.ts:15

##### Index

### Constructors

constructor

### Properties

_readyPromise

### Accessors

ready

### Methods

emit
init
initSignal
off
on
once
removeListener

## Constructors

### constructor

- new SDKObject(): SDKObject

  #### Returns SDKObject

  - Defined in src/Core/SDKObject.class.ts:23

## Properties

### `Protected`_readyPromise

_readyPromise: ControlledPromise<any>

- Defined in src/Core/SDKObject.class.ts:17

## Accessors

### ready

- get ready(): ControlledPromise<any>

  #### Returns ControlledPromise<any>

  - Defined in src/Core/SDKObject.class.ts:19

## Methods

### emit

- emit(event: string, ...args: any[]): void

  #### Parameters

  - event: string
  - ...args: any[]

  #### Returns void

  - Defined in src/Core/SDKObject.class.ts:45

### `Protected` init

- init(revolveReadyPromise?: boolean): Promise<void>

  #### Parameters

  - revolveReadyPromise: boolean = true

  #### Returns Promise<void>

  - Defined in src/Core/SDKObject.class.ts:30

### `Protected` initSignal

- initSignal(): Promise<void>

  #### Returns Promise<void>

  - Defined in src/Core/SDKObject.class.ts:37

### off

- off(event: string, listener: (...args: any[]) => void): void

  #### Parameters

  - event: string
  - listener: (...args: any[]) => void

  #### Returns void

  - Defined in src/Core/SDKObject.class.ts:49

### on

- on(event: string, listener: (...args: any[]) => void): void

  #### Parameters

  - event: string
  - listener: (...args: any[]) => void

  #### Returns void

  - Defined in src/Core/SDKObject.class.ts:41

### once

- once(event: string, listener: (...args: any[]) => void): void

  #### Parameters

  - event: string
  - listener: (...args: any[]) => void

  #### Returns void

  - Defined in src/Core/SDKObject.class.ts:53

### removeListener

- removeListener(event: string, listener: (...args: any[]) => void): void

  #### Parameters

  - event: string
  - listener: (...args: any[]) => void

  #### Returns void

  - Defined in src/Core/SDKObject.class.ts:56