# SDK Configuration

## TS SDK Configuration <a href="#ts-sdk-configuration" id="ts-sdk-configuration"></a>

### `Endless` class <a href="#endless-class" id="endless-class"></a>

The first step to interact with the Endless chain using the SDK it to instantiate an Endless class. This class is the main entry point into Endless's APIs.

```js
const endless = new Endless();
```

### Endless`Config` class <a href="#endlessconfig-class" id="endlessconfig-class"></a>

Sometimes you might want to use custom configurations when interacting with the Endless chain. For that we have EndlessConfig class that holds the config information for the SDK client instance.

```js
const endlessConfig = new EndlessConfig({...})
```

### Available configuration <a href="#available-configuration" id="available-configuration"></a>

```js
/** The Network that this SDK is associated with. Defaults to DEVNET */
readonly network: Network;

/**
 * The client instance the SDK uses. Defaults to `@endlesss-labs/endless-client`
 */
readonly client: Client;

/**
 * The optional hardcoded fullnode URL to send requests to instead of using the network
 */
readonly fullnode?: string;

/**
    * The optional hardcoded prover service URL to send requests to instead of using the network
    */
readonly prover?: string;

/**
 * A configuration object we can pass with the request to the server.
 */
readonly clientConfig?: ClientConfig;
```
