bx-rest 0.10.2 → 0.10.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -5,3 +5,4 @@ export * from './company';
5
5
  export * from './quote';
6
6
  export * from './automatedsolution';
7
7
  export * from './currency';
8
+ export * from './status';
@@ -0,0 +1,9 @@
1
+ import { iBXRestCrmStatus, iBXRestCrmStatusEntityType, iBXRestCrmStatusEntityTypeHttp, iBXRestCrmStatusHttp } from '../../typification/rest/crm';
2
+ export declare class BXRestMapCrmStatus {
3
+ /** Преобразует список элементов справочника из формата Bitrix24 в локальный формат. */
4
+ static list(value: iBXRestCrmStatusHttp[] | undefined): iBXRestCrmStatus[] | undefined;
5
+ /** Преобразует элемент справочника из формата Bitrix24 в локальный формат. */
6
+ static get(value: iBXRestCrmStatusHttp | undefined): iBXRestCrmStatus | undefined;
7
+ /** Нормализует идентификаторы воронок в описаниях типов справочников. */
8
+ static entityTypes(value: iBXRestCrmStatusEntityTypeHttp[] | undefined): iBXRestCrmStatusEntityType[] | undefined;
9
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bx-rest",
3
- "version": "0.10.2",
3
+ "version": "0.10.4",
4
4
  "description": "Bitrix24 REST API client and TypeScript SDK for Angular, Vue and browser apps",
5
5
  "keywords": [
6
6
  "bitrix",
@@ -0,0 +1,18 @@
1
+ import { iBXRestParamCrmDuplicateFindByComm } from '../../../typification/rest/crm';
2
+ import { BXRestNavvyCrmDuplicateVolatileType } from './volatile-type';
3
+ export * from './volatile-type';
4
+ /** Поиск дубликатов и настройка полей поиска (`crm.duplicate.*`). */
5
+ export declare class BXRestNavvyCrmDuplicate {
6
+ private readonly Navvy;
7
+ private readonly url;
8
+ /** Дополнительные поля поиска дубликатов (`crm.duplicate.volatileType.*`). */
9
+ readonly volatileType: BXRestNavvyCrmDuplicateVolatileType;
10
+ /**
11
+ * Возвращает идентификаторы лидов, контактов и компаний с совпадающими телефонами или email.
12
+ * Добавочный номер телефона при поиске не учитывается; за один вызов можно передать до 20 значений.
13
+ *
14
+ * @param param Тип коммуникации, искомые значения и необязательное ограничение типа CRM-объекта.
15
+ * @see https://apidocs.bitrix24.ru/api-reference/crm/duplicates/crm-duplicate-find-by-comm.html
16
+ */
17
+ findByComm(param: iBXRestParamCrmDuplicateFindByComm): import("../../../services/navvy").NavvySimple<Partial<Record<import("../../../typification/rest/crm").iBXRestCrmDuplicateEntityType, number[]>>, Partial<Record<import("../../../typification/rest/crm").iBXRestCrmDuplicateEntityType, number[]>>, iBXRestParamCrmDuplicateFindByComm | undefined>;
18
+ }
@@ -0,0 +1,34 @@
1
+ import { iBXRestCrmDuplicateVolatileType, iBXRestCrmDuplicateVolatileTypeField, iBXRestCrmDuplicateVolatileTypeRegisterResult, iBXRestParamCrmDuplicateVolatileTypeFields, iBXRestParamCrmDuplicateVolatileTypeRegister, iBXRestParamCrmDuplicateVolatileTypeUnregister } from '../../../typification/rest/crm';
2
+ /** Настройка дополнительных полей поиска дубликатов (`crm.duplicate.volatileType.*`). */
3
+ export declare class BXRestNavvyCrmDuplicateVolatileType {
4
+ private readonly Navvy;
5
+ private readonly url;
6
+ /**
7
+ * Возвращает стандартные и пользовательские поля, доступные для поиска дубликатов.
8
+ *
9
+ * @param param Необязательный тип CRM-объекта: `1` — лид, `3` — контакт, `4` — компания.
10
+ * @see https://apidocs.bitrix24.ru/api-reference/crm/duplicates/volatile-type/crm-duplicate-volatile-type-fields.html
11
+ */
12
+ fields(param?: iBXRestParamCrmDuplicateVolatileTypeFields): import("../../../services/navvy").NavvySimple<iBXRestCrmDuplicateVolatileTypeField[], iBXRestCrmDuplicateVolatileTypeField[], iBXRestParamCrmDuplicateVolatileTypeFields | undefined>;
13
+ /**
14
+ * Возвращает нестандартные поля, уже участвующие в поиске дубликатов.
15
+ *
16
+ * @see https://apidocs.bitrix24.ru/api-reference/crm/duplicates/volatile-type/crm-duplicate-volatile-type-list.html
17
+ */
18
+ list(): import("../../../services/navvy").NavvySimple<iBXRestCrmDuplicateVolatileType[], iBXRestCrmDuplicateVolatileType[], undefined>;
19
+ /**
20
+ * Добавляет стандартное или пользовательское поле в поиск дубликатов.
21
+ * Суммарно для лидов, контактов и компаний можно зарегистрировать до семи полей.
22
+ *
23
+ * @param param Тип CRM-объекта и код поля из результата метода `fields`.
24
+ * @see https://apidocs.bitrix24.ru/api-reference/crm/duplicates/volatile-type/crm-duplicate-volatile-type-register.html
25
+ */
26
+ register(param: iBXRestParamCrmDuplicateVolatileTypeRegister): import("../../../services/navvy").NavvySimple<iBXRestCrmDuplicateVolatileTypeRegisterResult, iBXRestCrmDuplicateVolatileTypeRegisterResult, iBXRestParamCrmDuplicateVolatileTypeRegister | undefined>;
27
+ /**
28
+ * Удаляет нестандартное поле из поиска дубликатов.
29
+ *
30
+ * @param param Идентификатор записи из результата метода `list` или `register`.
31
+ * @see https://apidocs.bitrix24.ru/api-reference/crm/duplicates/volatile-type/crm-duplicate-volatile-type-unregister.html
32
+ */
33
+ unregister(param: iBXRestParamCrmDuplicateVolatileTypeUnregister): import("../../../services/navvy").NavvySimple<boolean, boolean, iBXRestParamCrmDuplicateVolatileTypeUnregister | undefined>;
34
+ }
@@ -0,0 +1,15 @@
1
+ import { iBXRestCrmEntityMergeBatchResult, iBXRestParamCrmEntityMergeBatch } from '../../typification/rest/crm';
2
+ /** Операции над универсальными CRM-объектами (`crm.entity.*`). */
3
+ export declare class BXRestNavvyCrmEntity {
4
+ private readonly Navvy;
5
+ private readonly url;
6
+ /**
7
+ * Объединяет несколько CRM-объектов одного типа.
8
+ * Первый идентификатор определяет главный объект; остальные объекты удаляются после успеха.
9
+ * При статусе `CONFLICT` конфликтующие значения необходимо объединить вручную в интерфейсе Bitrix24.
10
+ *
11
+ * @param param Тип объекта и идентификаторы как минимум двух объединяемых элементов.
12
+ * @see https://apidocs.bitrix24.ru/api-reference/crm/duplicates/crm-entity-merge-batch.html
13
+ */
14
+ mergeBatch(param: iBXRestParamCrmEntityMergeBatch): import("../../services/navvy").NavvySimple<iBXRestCrmEntityMergeBatchResult, iBXRestCrmEntityMergeBatchResult, iBXRestParamCrmEntityMergeBatch | undefined>;
15
+ }
@@ -0,0 +1,20 @@
1
+ import { iBXRestCrmStatusEntityItem, iBXRestCrmStatusEntityType, iBXRestCrmStatusEntityTypeHttp, iBXRestParamCrmStatusEntityItems } from '../../../typification/rest/crm';
2
+ /** Навигатор методов описания типов справочников CRM (`crm.status.entity.*`). */
3
+ export declare class BXRestNavvyCrmStatusEntity {
4
+ private readonly Navvy;
5
+ private readonly url;
6
+ /**
7
+ * Возвращает все элементы указанного справочника с сортировкой по полю `SORT`.
8
+ *
9
+ * @param param Символьный идентификатор справочника в поле `entityId`.
10
+ * @see https://apidocs.bitrix24.ru/api-reference/crm/status/crm-status-entity-items.html
11
+ */
12
+ items(param: iBXRestParamCrmStatusEntityItems): import("../../../services/navvy").NavvySimple<iBXRestCrmStatusEntityItem[], iBXRestCrmStatusEntityItem[], iBXRestParamCrmStatusEntityItems | undefined>;
13
+ /**
14
+ * Возвращает все поддерживаемые типы справочников и их символьные идентификаторы.
15
+ * Для справочников стадий ответ также содержит сведения о воронке и семантике.
16
+ *
17
+ * @see https://apidocs.bitrix24.ru/api-reference/crm/status/crm-status-entity-types.html
18
+ */
19
+ types(): import("../../../services/navvy").NavvySimple<iBXRestCrmStatusEntityTypeHttp[], iBXRestCrmStatusEntityType[], undefined>;
20
+ }
@@ -0,0 +1,54 @@
1
+ import { iBXRestCrmStatus, iBXRestCrmStatusFields, iBXRestCrmStatusHttp, iBXRestParamCrmStatusAdd, iBXRestParamCrmStatusDelete, iBXRestParamCrmStatusGet, iBXRestParamCrmStatusList, iBXRestParamCrmStatusUpdate } from '../../typification/rest/crm';
2
+ import { BXRestNavvyCrmStatusEntity } from './status/entity';
3
+ export * from './status/entity';
4
+ /** Навигатор REST-методов справочников CRM (`crm.status.*`). */
5
+ export declare class BXRestNavvyCrmStatus {
6
+ private readonly Navvy;
7
+ private readonly url;
8
+ /** Типы справочников и получение их элементов (`crm.status.entity.*`). */
9
+ readonly entity: BXRestNavvyCrmStatusEntity;
10
+ /**
11
+ * Создает новый элемент в указанном справочнике CRM.
12
+ * Для стадий пользовательских воронок Bitrix24 автоматически добавляет к `STATUS_ID` префикс воронки.
13
+ *
14
+ * @param param Тип справочника и поля нового элемента.
15
+ * @see https://apidocs.bitrix24.ru/api-reference/crm/status/crm-status-add.html
16
+ */
17
+ add(param: iBXRestParamCrmStatusAdd): import("../../services/navvy").NavvySimple<number, number, iBXRestParamCrmStatusAdd | undefined>;
18
+ /**
19
+ * Обновляет название, сортировку или цвет существующего элемента справочника.
20
+ *
21
+ * @param param Идентификатор элемента и изменяемые поля.
22
+ * @see https://apidocs.bitrix24.ru/api-reference/crm/status/crm-status-update.html
23
+ */
24
+ update(param: iBXRestParamCrmStatusUpdate): import("../../services/navvy").NavvySimple<boolean, boolean, iBXRestParamCrmStatusUpdate | undefined>;
25
+ /**
26
+ * Возвращает элемент справочника по числовому идентификатору.
27
+ *
28
+ * @param param Идентификатор элемента справочника.
29
+ * @see https://apidocs.bitrix24.ru/api-reference/crm/status/crm-status-get.html
30
+ */
31
+ get(param: iBXRestParamCrmStatusGet): import("../../services/navvy").NavvySimple<iBXRestCrmStatusHttp, iBXRestCrmStatus, import("../../typification/rest/crm").iBXRestParamCrmStatusId | undefined>;
32
+ /**
33
+ * Возвращает список элементов справочников по фильтру с заданной сортировкой.
34
+ * Навигатор поддерживает получение всех страниц результата через `resAll()`.
35
+ *
36
+ * @param param Фильтр, сортировка и начальная позиция страницы.
37
+ * @see https://apidocs.bitrix24.ru/api-reference/crm/status/crm-status-list.html
38
+ */
39
+ list(param?: iBXRestParamCrmStatusList): import("../../services/navvy").NavvyPag<iBXRestCrmStatusHttp, iBXRestCrmStatus, iBXRestParamCrmStatusList>;
40
+ /**
41
+ * Удаляет элемент справочника.
42
+ * Для системного элемента передайте `params.FORCED: 'Y'`.
43
+ *
44
+ * @param param Идентификатор элемента и необязательный флаг принудительного удаления.
45
+ * @see https://apidocs.bitrix24.ru/api-reference/crm/status/crm-status-delete.html
46
+ */
47
+ delete(param: iBXRestParamCrmStatusDelete): import("../../services/navvy").NavvySimple<boolean, boolean, iBXRestParamCrmStatusDelete | undefined>;
48
+ /**
49
+ * Возвращает описание полей элементов справочников CRM.
50
+ *
51
+ * @see https://apidocs.bitrix24.ru/api-reference/crm/status/crm-status-fields.html
52
+ */
53
+ fields(): import("../../services/navvy").NavvySimple<iBXRestCrmStatusFields, iBXRestCrmStatusFields, undefined>;
54
+ }
@@ -9,7 +9,16 @@ import { BXRestNavvyCrmAutomation } from './crm/automation/index';
9
9
  import { BXRestNavvyCrmAutomatedSolution } from './crm/automatedsolution';
10
10
  import { BXRestNavvyCrmDocumentGenerator } from './crm/documentgenerator/index';
11
11
  import { BXRestNavvyCrmCurrency } from './crm/currency';
12
+ import { BXRestNavvyCrmStatus } from './crm/status';
13
+ import { BXRestNavvyCrmDuplicate } from './crm/duplicate/index';
14
+ import { BXRestNavvyCrmEntity } from './crm/entity';
12
15
  export declare class BXRestNavvyCrm {
16
+ /** Поиск дубликатов и настройка его полей (`crm.duplicate.*`). */
17
+ readonly duplicate: BXRestNavvyCrmDuplicate;
18
+ /** Операции над универсальными CRM-объектами (`crm.entity.*`). */
19
+ readonly entity: BXRestNavvyCrmEntity;
20
+ /** Справочники CRM (`crm.status.*`). */
21
+ readonly status: BXRestNavvyCrmStatus;
13
22
  /** Валюты CRM (`crm.currency.*`). */
14
23
  readonly currency: BXRestNavvyCrmCurrency;
15
24
  /** Генератор документов CRM (`crm.documentgenerator.*`). */
@@ -0,0 +1,57 @@
1
+ /** Тип CRM-объекта, поддерживаемый поиском дубликатов. */
2
+ export type iBXRestCrmDuplicateEntityType = 'LEAD' | 'CONTACT' | 'COMPANY';
3
+ /** Числовой идентификатор типа CRM-объекта, поддерживаемого настройкой поиска дубликатов. */
4
+ export type iBXRestCrmDuplicateEntityTypeId = 1 | 3 | 4;
5
+ /** Тип коммуникации, по которой выполняется поиск совпадений. */
6
+ export type iBXRestCrmDuplicateCommunicationType = 'EMAIL' | 'PHONE';
7
+ /** Параметры метода `crm.duplicate.findbycomm`. */
8
+ export interface iBXRestParamCrmDuplicateFindByComm {
9
+ /** Тип коммуникации: email-адрес или телефон. */
10
+ type: iBXRestCrmDuplicateCommunicationType;
11
+ /** Email-адреса или телефоны для поиска. Метод принимает не более 20 значений. */
12
+ values: string[];
13
+ /** Ограничение поиска одним типом CRM-объекта. По умолчанию поиск идет по всем типам. */
14
+ entity_type?: iBXRestCrmDuplicateEntityType;
15
+ }
16
+ /** Идентификаторы CRM-объектов с совпадающими коммуникациями. */
17
+ export type iBXRestCrmDuplicateFindByCommResult = Partial<Record<iBXRestCrmDuplicateEntityType, number[]>>;
18
+ /** Параметры метода `crm.duplicate.volatileType.fields`. */
19
+ export interface iBXRestParamCrmDuplicateVolatileTypeFields {
20
+ /** Тип CRM-объекта. Если не указан, возвращаются поля лидов, контактов и компаний. */
21
+ entityTypeId?: iBXRestCrmDuplicateEntityTypeId;
22
+ }
23
+ /** Поле, которое можно использовать для поиска дубликатов. */
24
+ export interface iBXRestCrmDuplicateVolatileTypeField {
25
+ /** Тип CRM-объекта, которому принадлежит поле. */
26
+ entityTypeId: iBXRestCrmDuplicateEntityTypeId;
27
+ /** Код стандартного или пользовательского поля. */
28
+ fieldCode: string;
29
+ /** Отображаемое название поля. */
30
+ fieldTitle: string;
31
+ }
32
+ /** Параметры метода `crm.duplicate.volatileType.register`. */
33
+ export interface iBXRestParamCrmDuplicateVolatileTypeRegister {
34
+ /** Тип CRM-объекта: `1` — лид, `3` — контакт, `4` — компания. */
35
+ entityTypeId: iBXRestCrmDuplicateEntityTypeId;
36
+ /** Код поля из результата `crm.duplicate.volatileType.fields`. */
37
+ fieldCode: string;
38
+ }
39
+ /** Результат добавления поля в поиск дубликатов. */
40
+ export interface iBXRestCrmDuplicateVolatileTypeRegisterResult {
41
+ /** Идентификатор записи, необходимый для последующего удаления поля из поиска. */
42
+ id: number;
43
+ }
44
+ /** Нестандартное поле, уже участвующее в поиске дубликатов. */
45
+ export interface iBXRestCrmDuplicateVolatileType {
46
+ /** Идентификатор записи о добавленном поле. */
47
+ id: number;
48
+ /** Тип CRM-объекта, которому принадлежит поле. */
49
+ entityTypeId: iBXRestCrmDuplicateEntityTypeId;
50
+ /** Код поля. */
51
+ fieldCode: string;
52
+ }
53
+ /** Параметры метода `crm.duplicate.volatileType.unregister`. */
54
+ export interface iBXRestParamCrmDuplicateVolatileTypeUnregister {
55
+ /** Идентификатор записи из результата `crm.duplicate.volatileType.list` или `register`. */
56
+ id: number;
57
+ }
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Идентификатор типа CRM-объекта для объединения.
3
+ *
4
+ * Стандартные значения: `1` — лид, `2` — сделка, `3` — контакт, `4` — компания,
5
+ * `7` — предложение, `31` — счет. Для смарт-процесса передается его динамический идентификатор.
6
+ */
7
+ export type iBXRestCrmEntityTypeId = number;
8
+ /** Параметры метода `crm.entity.mergeBatch`. */
9
+ export interface iBXRestParamCrmEntityMergeBatch {
10
+ /** Контейнер параметров объединения. */
11
+ params: {
12
+ /** Идентификатор типа объединяемых CRM-объектов. */
13
+ entityTypeId: iBXRestCrmEntityTypeId;
14
+ /**
15
+ * Идентификаторы как минимум двух объектов одного типа.
16
+ * Первый объект становится главным, остальные удаляются после успешного объединения.
17
+ */
18
+ entityIds: number[];
19
+ };
20
+ }
21
+ /** Статус объединения CRM-объектов. */
22
+ export type iBXRestCrmEntityMergeBatchStatus = 'SUCCESS' | 'CONFLICT' | 'ERROR';
23
+ /** Результат метода `crm.entity.mergeBatch`. */
24
+ export interface iBXRestCrmEntityMergeBatchResult {
25
+ /** Статус автоматического объединения. */
26
+ STATUS: iBXRestCrmEntityMergeBatchStatus;
27
+ /** Идентификаторы объектов, удаленных после успешного объединения. */
28
+ ENTITY_IDS: number[];
29
+ }
@@ -9,3 +9,6 @@ export * from './automation';
9
9
  export * from './automatedsolution';
10
10
  export * from './documentgenerator';
11
11
  export * from './currency';
12
+ export * from './status';
13
+ export * from './duplicate';
14
+ export * from './entity';
@@ -0,0 +1,167 @@
1
+ import { iBXRestPagination } from '../base/api-pagination-bx';
2
+ import { iBXRestParamSort } from '../base/sort';
3
+ import { iBXRestYesNo } from '../base/yes-no';
4
+ import { iBXRestCrmFieldDescription } from './enum';
5
+ /** Группа стадии: успех, провал или стадия в работе. */
6
+ export type iBXRestCrmStatusSemantics = 'S' | 'F' | '';
7
+ /** Поля нового элемента справочника CRM. */
8
+ export interface iBXRestCrmStatusAddFields {
9
+ /** Символьный идентификатор справочника, например `DEAL_STAGE` или `SOURCE`. */
10
+ ENTITY_ID: string;
11
+ /** Уникальный в рамках справочника код значения. */
12
+ STATUS_ID: string;
13
+ /** Отображаемое название значения. */
14
+ NAME: string;
15
+ /** Позиция значения в справочнике. По умолчанию 10. */
16
+ SORT?: number;
17
+ /** Цвет стадии в формате hex, например `#39A8EF`. */
18
+ COLOR?: string;
19
+ /** Группа стадии: `S` — успех, `F` — провал, пустая строка — в работе. */
20
+ SEMANTICS?: iBXRestCrmStatusSemantics;
21
+ }
22
+ /** Изменяемые поля элемента справочника CRM. */
23
+ export interface iBXRestCrmStatusUpdateFields {
24
+ /** Новое отображаемое название. */
25
+ NAME?: string;
26
+ /** Новая позиция в справочнике. */
27
+ SORT?: number;
28
+ /** Новый цвет стадии в формате hex. */
29
+ COLOR?: string;
30
+ }
31
+ /** Параметры метода `crm.status.add`. */
32
+ export interface iBXRestParamCrmStatusAdd {
33
+ /** Поля нового элемента справочника. */
34
+ fields: iBXRestCrmStatusAddFields;
35
+ }
36
+ /** Параметры метода `crm.status.update`. */
37
+ export interface iBXRestParamCrmStatusUpdate {
38
+ /** Числовой идентификатор изменяемого элемента. */
39
+ id: number;
40
+ /** Изменяемые поля элемента справочника. */
41
+ fields: iBXRestCrmStatusUpdateFields;
42
+ }
43
+ /** Параметры методов, принимающих идентификатор элемента справочника. */
44
+ export interface iBXRestParamCrmStatusId {
45
+ /** Числовой идентификатор элемента справочника. */
46
+ id: number;
47
+ }
48
+ /** Параметры метода `crm.status.get`. */
49
+ export type iBXRestParamCrmStatusGet = iBXRestParamCrmStatusId;
50
+ /** Параметры метода `crm.status.delete`. */
51
+ export interface iBXRestParamCrmStatusDelete extends iBXRestParamCrmStatusId {
52
+ params?: {
53
+ /** Разрешает удалить системный элемент справочника. По умолчанию `N`. */
54
+ FORCED?: iBXRestYesNo;
55
+ };
56
+ }
57
+ /** Поля элемента справочника, доступные для сортировки и фильтрации. */
58
+ export type iBXRestCrmStatusField = 'ID' | 'ENTITY_ID' | 'STATUS_ID' | 'SORT' | 'NAME' | 'NAME_INIT' | 'SYSTEM' | 'CATEGORY_ID' | 'COLOR' | 'SEMANTICS' | 'EXTRA';
59
+ /** Параметры метода `crm.status.list`. */
60
+ export interface iBXRestParamCrmStatusList extends iBXRestPagination {
61
+ /** Порядок сортировки элементов по полям справочника. */
62
+ order?: Partial<Record<iBXRestCrmStatusField, iBXRestParamSort>>;
63
+ /** Фильтр по полям справочника, включая REST-префиксы операторов. */
64
+ filter?: Record<string, any>;
65
+ }
66
+ /** Параметры метода `crm.status.entity.items`. */
67
+ export interface iBXRestParamCrmStatusEntityItems {
68
+ /** Символьный идентификатор справочника, например `DEAL_STAGE` или `SOURCE`. */
69
+ entityId: string;
70
+ }
71
+ /** Дополнительные данные элемента справочника. */
72
+ export interface iBXRestCrmStatusExtra extends Record<string, any> {
73
+ /** Семантика стадии в человекочитаемом формате. */
74
+ SEMANTICS?: string;
75
+ /** Цвет стадии в формате hex. */
76
+ COLOR?: string;
77
+ }
78
+ interface iBXRestCrmStatusBase {
79
+ /** Символьный идентификатор справочника. */
80
+ ENTITY_ID: string;
81
+ /** Код значения, используемый в полях элементов CRM. */
82
+ STATUS_ID: string;
83
+ /** Отображаемое название. */
84
+ NAME: string;
85
+ /** Исходное системное название. */
86
+ NAME_INIT: string;
87
+ /** Цвет стадии в формате hex. */
88
+ COLOR: string;
89
+ /** Группа стадии. */
90
+ SEMANTICS: iBXRestCrmStatusSemantics | null;
91
+ /** Дополнительные данные элемента. */
92
+ EXTRA?: iBXRestCrmStatusExtra;
93
+ }
94
+ /** Элемент справочника CRM в локальном формате библиотеки. */
95
+ export interface iBXRestCrmStatus extends iBXRestCrmStatusBase {
96
+ /** Числовой идентификатор элемента. */
97
+ ID: number;
98
+ /** Позиция элемента в справочнике. */
99
+ SORT: number;
100
+ /** Является ли элемент системным. */
101
+ SYSTEM: boolean;
102
+ /** Идентификатор воронки для статуса-стадии. */
103
+ CATEGORY_ID: number | null;
104
+ }
105
+ /** Элемент справочника CRM в формате ответа Bitrix24. */
106
+ export interface iBXRestCrmStatusHttp extends iBXRestCrmStatusBase {
107
+ ID: string;
108
+ SORT: string;
109
+ SYSTEM: iBXRestYesNo;
110
+ CATEGORY_ID: string | null;
111
+ }
112
+ /** Краткое представление элемента, возвращаемое `crm.status.entity.items`. */
113
+ export interface iBXRestCrmStatusEntityItem {
114
+ /** Отображаемое название. */
115
+ NAME: string;
116
+ /** Позиция элемента в справочнике. */
117
+ SORT: number;
118
+ /** Код значения, используемый в полях элементов CRM. */
119
+ STATUS_ID: string;
120
+ }
121
+ /** Семантические границы справочника стадий. */
122
+ export interface iBXRestCrmStatusSemanticInfo {
123
+ /** Код начальной стадии. */
124
+ START_FIELD: string;
125
+ /** Код успешной финальной стадии. */
126
+ FINAL_SUCCESS_FIELD: string;
127
+ /** Код неуспешной финальной стадии. */
128
+ FINAL_UNSUCCESS_FIELD: string;
129
+ /** Позиция финальной стадии. */
130
+ FINAL_SORT: number;
131
+ }
132
+ interface iBXRestCrmStatusEntityTypeBase {
133
+ /** Символьный идентификатор справочника для параметра `ENTITY_ID`. */
134
+ ID: string;
135
+ /** Отображаемое название справочника. */
136
+ NAME: string;
137
+ /** Тип объекта CRM, к которому относится справочник стадий. */
138
+ ENTITY_TYPE_ID?: number;
139
+ /** Семантические границы стадий; некоторые типы API возвращают пустой массив. */
140
+ SEMANTIC_INFO?: iBXRestCrmStatusSemanticInfo | [];
141
+ /** Префикс кода стадии воронки. */
142
+ PREFIX?: string;
143
+ /** Область применения поля, соответствующая воронке. */
144
+ FIELD_ATTRIBUTE_SCOPE?: string;
145
+ /** Активен ли тип справочника. */
146
+ IS_ENABLED?: boolean;
147
+ /** Идентификатор родительского справочника. */
148
+ PARENT_ID?: string;
149
+ /** Название воронки. */
150
+ CATEGORY_NAME?: string;
151
+ /** Позиция воронки. */
152
+ CATEGORY_SORT?: number;
153
+ /** Является ли воронка воронкой по умолчанию. */
154
+ IS_DEFAULT_CATEGORY?: boolean;
155
+ }
156
+ /** Описание типа справочника в локальном формате библиотеки. */
157
+ export interface iBXRestCrmStatusEntityType extends iBXRestCrmStatusEntityTypeBase {
158
+ /** Идентификатор воронки. */
159
+ CATEGORY_ID?: number;
160
+ }
161
+ /** Описание типа справочника в формате ответа Bitrix24. */
162
+ export interface iBXRestCrmStatusEntityTypeHttp extends iBXRestCrmStatusEntityTypeBase {
163
+ CATEGORY_ID?: number | string;
164
+ }
165
+ /** Описание полей, возвращаемое методом `crm.status.fields`. */
166
+ export type iBXRestCrmStatusFields = Record<iBXRestCrmStatusField, iBXRestCrmFieldDescription>;
167
+ export {};