> ## Documentation Index
> Fetch the complete documentation index at: https://narev.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# NarevClient

[**@ai-billing/narev**](../index)

***

[@ai-billing/narev](/docs/sdk/ai-billing/reference/narev/typedoc/index) / NarevClient

# Interface: NarevClient

Defined in: [packages/narev/src/narev-client.ts:32](https://github.com/narevai/ai-billing/blob/main/packages/narev/src/narev-client.ts#L32)

Typed client for the Narev billing API.

Covers balance checks, top-up/credit operations, model/provider reference,
pricing lookups, and cost calculation.

## Methods

### getBalance()

> **getBalance**(`request`): `Promise`\<[`BalanceResponse`](/docs/sdk/ai-billing/reference/narev/typedoc/interfaces/BalanceResponse)>

Defined in: [packages/narev/src/narev-client.ts:37](https://github.com/narevai/ai-billing/blob/main/packages/narev/src/narev-client.ts#L37)

Fetches the end-user's balance and consumption for the current billing period.
Pass either `{ userId }` or `{ stripeCustomerId }`.

#### Parameters

##### request

[`GetBalanceRequest`](/docs/sdk/ai-billing/reference/narev/typedoc/type-aliases/GetBalanceRequest)

#### Returns

`Promise`\<[`BalanceResponse`](/docs/sdk/ai-billing/reference/narev/typedoc/interfaces/BalanceResponse)>

***

### getCreditConfig()

> **getCreditConfig**(): `Promise`\<[`CreditConfigResponse`](/docs/sdk/ai-billing/reference/narev/typedoc/interfaces/CreditConfigResponse)>

Defined in: [packages/narev/src/narev-client.ts:40](https://github.com/narevai/ai-billing/blob/main/packages/narev/src/narev-client.ts#L40)

Fetches available credit packages for top-up.

#### Returns

`Promise`\<[`CreditConfigResponse`](/docs/sdk/ai-billing/reference/narev/typedoc/interfaces/CreditConfigResponse)>

***

### createCheckout()

> **createCheckout**(`request`): `Promise`\<[`CheckoutResponse`](/docs/sdk/ai-billing/reference/narev/typedoc/interfaces/CheckoutResponse)>

Defined in: [packages/narev/src/narev-client.ts:43](https://github.com/narevai/ai-billing/blob/main/packages/narev/src/narev-client.ts#L43)

Creates a checkout session for an end-user to purchase credits.

#### Parameters

##### request

[`CreateCheckoutRequest`](/docs/sdk/ai-billing/reference/narev/typedoc/interfaces/CreateCheckoutRequest)

#### Returns

`Promise`\<[`CheckoutResponse`](/docs/sdk/ai-billing/reference/narev/typedoc/interfaces/CheckoutResponse)>

***

### listModels()

> **listModels**(`request?`): `Promise`\<[`ModelsResponse`](/docs/sdk/ai-billing/reference/narev/typedoc/interfaces/ModelsResponse)>

Defined in: [packages/narev/src/narev-client.ts:46](https://github.com/narevai/ai-billing/blob/main/packages/narev/src/narev-client.ts#L46)

Returns a paginated list of model references (provider\_id + model\_id, no pricing).

#### Parameters

##### request?

[`ListModelsRequest`](/docs/sdk/ai-billing/reference/narev/typedoc/interfaces/ListModelsRequest)

#### Returns

`Promise`\<[`ModelsResponse`](/docs/sdk/ai-billing/reference/narev/typedoc/interfaces/ModelsResponse)>

***

### listProviders()

> **listProviders**(): `Promise`\<[`ProvidersResponse`](/docs/sdk/ai-billing/reference/narev/typedoc/interfaces/ProvidersResponse)>

Defined in: [packages/narev/src/narev-client.ts:49](https://github.com/narevai/ai-billing/blob/main/packages/narev/src/narev-client.ts#L49)

Returns all supported providers with their display name.

#### Returns

`Promise`\<[`ProvidersResponse`](/docs/sdk/ai-billing/reference/narev/typedoc/interfaces/ProvidersResponse)>

***

### listPrices()

> **listPrices**(`request?`): `Promise`\<[`PriceResponse`](/docs/sdk/ai-billing/reference/narev/typedoc/interfaces/PriceResponse)>

Defined in: [packages/narev/src/narev-client.ts:52](https://github.com/narevai/ai-billing/blob/main/packages/narev/src/narev-client.ts#L52)

Returns a paginated list of pricing entries filtered by provider and/or model.

#### Parameters

##### request?

[`ListPricesRequest`](/docs/sdk/ai-billing/reference/narev/typedoc/interfaces/ListPricesRequest)

#### Returns

`Promise`\<[`PriceResponse`](/docs/sdk/ai-billing/reference/narev/typedoc/interfaces/PriceResponse)>

***

### searchPrices()

> **searchPrices**(`request?`): `Promise`\<[`PriceResponse`](/docs/sdk/ai-billing/reference/narev/typedoc/interfaces/PriceResponse)>

Defined in: [packages/narev/src/narev-client.ts:55](https://github.com/narevai/ai-billing/blob/main/packages/narev/src/narev-client.ts#L55)

Searches pricing entries by model ID (full-text search via `q`).

#### Parameters

##### request?

[`SearchPricesRequest`](/docs/sdk/ai-billing/reference/narev/typedoc/interfaces/SearchPricesRequest)

#### Returns

`Promise`\<[`PriceResponse`](/docs/sdk/ai-billing/reference/narev/typedoc/interfaces/PriceResponse)>

***

### calculateCost()

> **calculateCost**(`request`): `Promise`\<[`TraceCostResponse`](/docs/sdk/ai-billing/reference/narev/typedoc/interfaces/TraceCostResponse)>

Defined in: [packages/narev/src/narev-client.ts:58](https://github.com/narevai/ai-billing/blob/main/packages/narev/src/narev-client.ts#L58)

Calculates the cost for a model call given token usage.

#### Parameters

##### request

[`TraceCostRequest`](/docs/sdk/ai-billing/reference/narev/typedoc/interfaces/TraceCostRequest)

#### Returns

`Promise`\<[`TraceCostResponse`](/docs/sdk/ai-billing/reference/narev/typedoc/interfaces/TraceCostResponse)>
