# Core

## Content

# Namespace: Core

## Table of contents

### Namespaces

- [Rdl](Core.Rdl)

### Classes

- [PageDocument](../classes/Core.PageDocument)
- [PageReport](../classes/Core.PageReport)

### Interfaces

- [Event](../interfaces/Core.Event)
- [FontDescriptor](../interfaces/Core.FontDescriptor)

### Type aliases

- [AnimationSettings](Core#animationsettings)
- [Environment](Core#environment)
- [EventHandler](Core#eventhandler)
- [NoValueType](Core#novaluetype)
- [Parameter](Core#parameter)
- [ParameterDataType](Core#parameterdatatype)
- [ParameterDescriptor](Core#parameterdescriptor)
- [ParameterDescriptorConfig](Core#parameterdescriptorconfig)
- [ParameterDescriptorEx](Core#parameterdescriptorex)
- [ParameterValue](Core#parametervalue)
- [ParameterVariant](Core#parametervariant)
- [RenderOptions](Core#renderoptions)
- [ReportParameters](Core#reportparameters)
- [ResourceLocator](Core#resourcelocator)
- [SelectAllType](Core#selectalltype)
- [UnregisterHandler](Core#unregisterhandler)

### Variables

- [CultureInfo](Core#cultureinfo)
- [CustomCode](Core#customcode)
- [FontStore](Core#fontstore)
- [noValue](Core#novalue)
- [selectAll](Core#selectall)

### Functions

- [setLicenseKey](Core#setlicensekey)

## Type aliases

### <a id="animationsettings" name="animationsettings"></a> AnimationSettings

Ƭ **AnimationSettings**: `Partial`<{ `charts`: `Partial`<{ `highlight`: { `enabled`: `boolean`  } ; `onHover`: { `enabled`: `boolean`  } ; `onLoad`: { `enabled`: `boolean`  }  }\> ; `table`: { `onHover`: { `backgroundColor`: `string` ; `enabled`: `boolean` ; `textColor?`: `string`  } \| { `enabled`: `boolean` ; `textColor`: `string`  }  }  }\>

Animation settings for visual components.

___

### <a id="environment" name="environment"></a> Environment

Ƭ **Environment**: `Object`

Report environment used for expressions calculation.

#### Type declaration

| Name | Type | Description |
| :------ | :------ | :------ |
| `ReportFolder?` | `string` | Report directory name |
| `ReportName?` | `string` | Report name |

___

### <a id="eventhandler" name="eventhandler"></a> EventHandler

Ƭ **EventHandler**<`TArgs`\>: (`args`: `TArgs`) => `void`

#### Type parameters

| Name | Description |
| :------ | :------ |
| `TArgs` | event argument type |

#### Type declaration

▸ (`args`): `void`

Event Handler

##### Parameters

| Name | Type |
| :------ | :------ |
| `args` | `TArgs` |

##### Returns

`void`

___

### <a id="novaluetype" name="novaluetype"></a> NoValueType

Ƭ **NoValueType**: typeof [`noValue`](Core#novalue)

Defines special value to indicate that value is not set.

___

### <a id="parameter" name="parameter"></a> Parameter

Ƭ **Parameter**: `Object`

Defines report parameter

#### Type declaration

| Name | Type | Description |
| :------ | :------ | :------ |
| `descriptor` | [`ParameterDescriptorEx`](Core#parameterdescriptorex) | Parameter descriptor |
| `errorMessage` | `string` \| ``null`` | Shows error message for invalid parameter values |
| `isValidValuesLoaded` | `boolean` | _true_ if valid values list was loaded |
| `validValues` | [`ParameterValue`](Core#parametervalue)[] | Valid values |
| `values` | [`ParameterVariant`](Core#parametervariant)[] | Parameter values |

___

### <a id="parameterdatatype" name="parameterdatatype"></a> ParameterDataType

Ƭ **ParameterDataType**: ``"Boolean"`` \| ``"String"`` \| ``"Integer"`` \| ``"Float"`` \| ``"Date"`` \| ``"DateTime"``

Defines parameter data type.

___

### <a id="parameterdescriptor" name="parameterdescriptor"></a> ParameterDescriptor

Ƭ **ParameterDescriptor**: `Object`

Defines report parameter descriptor

#### Type declaration

| Name | Type | Description |
| :------ | :------ | :------ |
| `allowBlank` | `boolean` | Allow blank |
| `dataType` | [`ParameterDataType`](Core#parameterdatatype) | Parameter data type |
| `dependsOn` | `string`[] | Parameters on which parameter depends |
| `displayFormat` | `string` | Format to display value |
| `enableEmptyArray` | `boolean` | Specifies whether this parameter can have an empty array as its value. This setting is only available for multi-valued parameters |
| `multiValue` | `boolean` | Parameter is multivalue |
| `name` | `string` | Parameter name |
| `nullable` | `boolean` | Allow null |
| `selectAllValue?` | `any` | For multivalue parameter special value to indicate that all available values are selected |

___

### <a id="parameterdescriptorconfig" name="parameterdescriptorconfig"></a> ParameterDescriptorConfig

Ƭ **ParameterDescriptorConfig**: `Object`

Parameter visual presentation settings.

#### Type declaration

| Name | Type | Description |
| :------ | :------ | :------ |
| `hidden` | `boolean` | Indicates that parameter is hidden. Hidden parameters are not visible in parameter panel. |
| `multiline` | `boolean` | Multiline. |
| `prompt` | `string` | Parameter value prompt. |

___

### <a id="parameterdescriptorex" name="parameterdescriptorex"></a> ParameterDescriptorEx

Ƭ **ParameterDescriptorEx**: [`ParameterDescriptor`](Core#parameterdescriptor) & [`ParameterDescriptorConfig`](Core#parameterdescriptorconfig)

Parameter descriptor.

___

### <a id="parametervalue" name="parametervalue"></a> ParameterValue

Ƭ **ParameterValue**: `Object`

Defines parameter value

#### Type declaration

| Name | Type | Description |
| :------ | :------ | :------ |
| `fields?` | `any`[] | Additional fields for extended parameter view |
| `label` | `string` | Label to display |
| `value` | [`ParameterVariant`](Core#parametervariant) | Value |

___

### <a id="parametervariant" name="parametervariant"></a> ParameterVariant

Ƭ **ParameterVariant**: `string` \| `number` \| `boolean` \| `Date` \| ``null`` \| [`NoValueType`](Core#novaluetype) \| [`SelectAllType`](Core#selectalltype)

Type of parameter value

___

### <a id="renderoptions" name="renderoptions"></a> RenderOptions

Ƭ **RenderOptions**: `Object`

Document render options

#### Type declaration

| Name | Type | Description |
| :------ | :------ | :------ |
| `forceCellbased?` | `boolean` | Force cell-based layout. |
| `galleyMode` | `boolean` | Renders document without splitting the big content to pages. |
| `interactivityActions` | ({ `Data`: `string` ; `Type`: ``"toggle"``  } \| { `Data`: `string` ; `Type`: ``"sort"``  })[] | Holds sorts/toggles state of the document. |

___

### <a id="reportparameters" name="reportparameters"></a> ReportParameters

Ƭ **ReportParameters**: `Object`

Defines report parameters

#### Type declaration

| Name | Type |
| :------ | :------ |
| `applySteps` | (`steps`: `ApplyParameterStep`[]) => `Promise`<`void`\> |
| `getDescriptors` | () => { `[name: string]`: [`ParameterDescriptorEx`](Core#parameterdescriptorex);  } |
| `getValues` | () => { `[name: string]`: `ParameterState`;  } |
| `getValuesFor` | (`knownValues`: { `[name: string]`: [`ParameterVariant`](Core#parametervariant) \| [`ParameterVariant`](Core#parametervariant)[];  }, `requiredParameters`: { `[name: string]`: { `fields`: `string`[]  } \| ``null``;  }) => `Promise`<`GetValuesResult`\> |

___

### <a id="resourcelocator" name="resourcelocator"></a> ResourceLocator

Ƭ **ResourceLocator**: `Object`

Provide tools for accessing external resources by URIs.

#### Type declaration

| Name | Type |
| :------ | :------ |
| `fork` | (`reportName`: `string`) => [`ResourceLocator`](Core#resourcelocator) |
| `getResource` | <T\>(`uri`: `string`) => `Promise`<``null`` \| `T`\> |
| `getResourceUri` | (`resourceID`: `string`) => `string` |

___

### <a id="selectalltype" name="selectalltype"></a> SelectAllType

Ƭ **SelectAllType**: `Object`

Defines special value for multivalue parameter to indicate that all values are set.

___

### <a id="unregisterhandler" name="unregisterhandler"></a> UnregisterHandler

Ƭ **UnregisterHandler**: () => `void`

#### Type declaration

▸ (): `void`

Unsubscribe event handler

##### Returns

`void`

## Variables

### <a id="cultureinfo" name="cultureinfo"></a> CultureInfo

• **CultureInfo**: `Object`

Provides data for language and culture specific text formatting.

#### Type declaration

| Name | Type |
| :------ | :------ |
| `registerCulture` | (`identifier`: `string`, `data`: `any`) => `void` |

___

### <a id="customcode" name="customcode"></a> CustomCode

• **CustomCode**: `Object`

Provides tool for registering user defined functions.

#### Type declaration

| Name | Type |
| :------ | :------ |
| `getFunctions` | () => `UserDefinedFunction`[] |
| `registerFunctions` | (`functions`: `UserDefinedFunction`[]) => `void` |

___

### <a id="fontstore" name="fontstore"></a> FontStore

• **FontStore**: `Object`

Provides tools for registering fonts in CSS and pdf export.

#### Type declaration

| Name | Type |
| :------ | :------ |
| `registerFonts` | (...`fonts`: [`FontDescriptor`](../interfaces/Core.FontDescriptor)[]) => `Promise`<`void`\> & (`configUri`: `string`) => `Promise`<`void`\> |
| `getFonts` | () => [`FontDescriptor`](../interfaces/Core.FontDescriptor)[] |

___

### <a id="novalue" name="novalue"></a> noValue

• **noValue**: `undefined`

Special value to indicate that value is not set.

___

### <a id="selectall" name="selectall"></a> selectAll

• **selectAll**: [`SelectAllType`](Core#selectalltype)

Special value for multivalue parameter to indicate that all values are set.

## Functions

### <a id="setlicensekey" name="setlicensekey"></a> setLicenseKey

▸ **setLicenseKey**(`key`): `void`

Set ARJS license key

#### Parameters

| Name | Type | Description |
| :------ | :------ | :------ |
| `key` | `string` | license key value |

#### Returns

`void`
