[**@s4ai/core Documentation v0.3.23**](../../../../README.md)

***

[@s4ai/core Documentation](../../../../modules.md) / [@s4ai/core/business](../README.md) / AutonomousRevenueOptimizer

# Class: AutonomousRevenueOptimizer

Defined in: business/autonomous-revenue-optimizer.js:124

## Extends

- [`Revenue`](../variables/Revenue.md)

## Constructors

### Constructor

> **new AutonomousRevenueOptimizer**(`config?`): `RevenueOptimizer`

Defined in: business/autonomous-revenue-optimizer.js:125

#### Parameters

##### config?

#### Returns

`RevenueOptimizer`

#### Overrides

`EventEmitter.constructor`

## Properties

### campaigns

> **campaigns**: `any`[]

Defined in: business/autonomous-revenue-optimizer.js:128

***

### conversionGoal

> **conversionGoal**: `any`

Defined in: business/autonomous-revenue-optimizer.js:132

***

### learningRate

> **learningRate**: `any`

Defined in: business/autonomous-revenue-optimizer.js:130

***

### optimizationCycles

> **optimizationCycles**: `number`

Defined in: business/autonomous-revenue-optimizer.js:129

***

### optimizationHistory

> **optimizationHistory**: `any`[]

Defined in: business/autonomous-revenue-optimizer.js:134

***

### products

> **products**: `Map`\<`any`, `any`\>

Defined in: business/autonomous-revenue-optimizer.js:127

***

### testDuration

> **testDuration**: `any`

Defined in: business/autonomous-revenue-optimizer.js:131

***

### totalRevenue

> **totalRevenue**: `number`

Defined in: business/autonomous-revenue-optimizer.js:133

## Methods

### calculateROI()

> **calculateROI**(): \{ `baselineRevenue?`: `undefined`; `currentRevenue?`: `undefined`; `improvement`: `number`; `increasePerCycle?`: `undefined`; `roi`: `number`; \} \| \{ `baselineRevenue`: `any`; `currentRevenue`: `any`; `improvement`: `number`; `increasePerCycle`: `string`; `roi`: `number`; \}

Defined in: business/autonomous-revenue-optimizer.js:326

#### Returns

\{ `baselineRevenue?`: `undefined`; `currentRevenue?`: `undefined`; `improvement`: `number`; `increasePerCycle?`: `undefined`; `roi`: `number`; \} \| \{ `baselineRevenue`: `any`; `currentRevenue`: `any`; `improvement`: `number`; `increasePerCycle`: `string`; `roi`: `number`; \}

***

### createOptimizationCampaign()

> **createOptimizationCampaign**(`productId`, `variants?`): \{ `id`: `string`; `productId`: `any`; `startTime`: `number`; `status`: `string`; `variants`: `never`[]; \} \| `null`

Defined in: business/autonomous-revenue-optimizer.js:145

#### Parameters

##### productId

`any`

##### variants?

`number`[] = `...`

#### Returns

\{ `id`: `string`; `productId`: `any`; `startTime`: `number`; `status`: `string`; `variants`: `never`[]; \} \| `null`

***

### getOptimizerMetrics()

> **getOptimizerMetrics**(): `object`

Defined in: business/autonomous-revenue-optimizer.js:312

#### Returns

`object`

##### activeCampaigns

> **activeCampaigns**: `number`

##### historicalCycles

> **historicalCycles**: `number`

##### optimizationCycles

> **optimizationCycles**: `number`

##### productMetrics

> **productMetrics**: `any`[]

##### totalProducts

> **totalProducts**: `number`

##### totalRevenue

> **totalRevenue**: `number`

***

### optimizeAll()

> **optimizeAll**(): `Promise`\<`object`[]\>

Defined in: business/autonomous-revenue-optimizer.js:217

#### Returns

`Promise`\<`object`[]\>

***

### predictRevenue()

> **predictRevenue**(`days?`): \{ `confidence`: `number`; `forecastDays?`: `undefined`; `predicted`: `number`; `trend?`: `undefined`; \} \| \{ `confidence`: `string`; `forecastDays`: `number`; `predicted`: `number`; `trend`: `number`; \}

Defined in: business/autonomous-revenue-optimizer.js:290

#### Parameters

##### days?

`number` = `7`

#### Returns

\{ `confidence`: `number`; `forecastDays?`: `undefined`; `predicted`: `number`; `trend?`: `undefined`; \} \| \{ `confidence`: `string`; `forecastDays`: `number`; `predicted`: `number`; `trend`: `number`; \}

***

### recordTransaction()

> **recordTransaction**(`productId`, `variantId`, `purchaseAmount`): `void`

Defined in: business/autonomous-revenue-optimizer.js:194

#### Parameters

##### productId

`any`

##### variantId

`any`

##### purchaseAmount

`any`

#### Returns

`void`

***

### recordView()

> **recordView**(`productId`, `variantId`): `void`

Defined in: business/autonomous-revenue-optimizer.js:209

#### Parameters

##### productId

`any`

##### variantId

`any`

#### Returns

`void`

***

### registerProduct()

> **registerProduct**(`productId`, `basePrice`, `config?`): [`PricingStrategy`](../../../../business/autonomous-revenue-optimizer/classes/PricingStrategy.md)

Defined in: business/autonomous-revenue-optimizer.js:137

#### Parameters

##### productId

`any`

##### basePrice

`any`

##### config?

#### Returns

[`PricingStrategy`](../../../../business/autonomous-revenue-optimizer/classes/PricingStrategy.md)

***

### selectVariant()

> **selectVariant**(`productId`): `any`

Defined in: business/autonomous-revenue-optimizer.js:172

#### Parameters

##### productId

`any`

#### Returns

`any`

***

### updateDynamicPricing()

> **updateDynamicPricing**(`demand`, `inventory`): `object`[]

Defined in: business/autonomous-revenue-optimizer.js:267

#### Parameters

##### demand

`any`

##### inventory

`any`

#### Returns

`object`[]
