# Core

## Content

# Namespace: Core

## Table of contents

### Namespaces

- [Rdl](Core.Rdl)

### Classes

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

### Interfaces

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

### Type aliases

- [Environment](Core#environment)
- [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)
- [ValidationResult](Core#validationresult)
- [ValidationResults](Core#validationresults)

### Variables

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

### Functions

- [registerFont](Core#registerfont)
- [setLicenseKey](Core#setlicensekey)

## Type aliases

### <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="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 |
| `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 |
| :------ | :------ | :------ |
| `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

#### Index signature

▪ [name: `string`]: [`Parameter`](Core#parameter)

___

### <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="validationresult" name="validationresult"></a> ValidationResult

Ƭ **ValidationResult**: `Object`

Parameter validation result

#### Type declaration

| Name | Type | Description |
| :------ | :------ | :------ |
| `isValid` | `boolean` | Indicates whether validation success or not. |
| `message?` | `string` | The error text in case of validation fails. |
| `value?` | `any` | New validated parameter value. |

___

### <a id="validationresults" name="validationresults"></a> ValidationResults

Ƭ **ValidationResults**: `Object`

Parameters validation result

#### Index signature

▪ [parameter: `string`]: [`ValidationResult`](Core#validationresult)

Dictionary with validation results per parameter

## 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`: `LocaleData`) => `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="registerfont" name="registerfont"></a> registerFont

▸ **registerFont**(...`fonts`): `Promise`<`void`\>

**`deprecated`** Use FontStore.registerFonts instead
Registers and loads user-specified fonts

#### Parameters

| Name | Type | Description |
| :------ | :------ | :------ |
| `...fonts` | [`FontDescriptor`](../interfaces/Core.FontDescriptor)[] | Set of font descriptors to be registered |

#### Returns

`Promise`<`void`\>

Promise that will be resolved when all fonts are loaded and ready for render

___

### <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`
