@opens/gateways 1.16.18 → 1.16.20

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.
@@ -337,11 +337,21 @@ interface QueueRule extends Rule {
337
337
  flow?: Rule[];
338
338
  }
339
339
  /** Known rule action values used by the Chat Config API. */
340
- type RuleAction = 'queue' | 'interactiveMessage' | 'message' | 'automaticMessage' | 'callOnQueue' | 'ura' | 'webhook' | 'questionnaire' | 'flow' | 'csat';
340
+ type RuleAction = 'queue' | 'interactiveMessage' | 'message' | 'automaticMessage' | 'automatic-message' | 'callOnQueue' | 'ura' | 'webhook' | 'questionnaire' | 'flow' | 'csat';
341
341
  /** Archive filter for listing rules. Matches `GET /rules/paginated` query validation. */
342
342
  type RuleArchiveStatus = 'archived' | 'unarchived' | 'all';
343
343
  /** Associations that can be eager-loaded when listing paginated rules. */
344
344
  type RuleAssociation = 'flow';
345
+ /** HTTP method used by webhook and questionnaire outbound requests. */
346
+ type RuleHttpMethod = 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE' | string;
347
+ /** Interactive presentation for URA rules (`settings.interactiveType`). */
348
+ type RuleInteractiveType = 'button' | 'list';
349
+ /** Validation action taken after a questionnaire answer is validated. */
350
+ type RuleQuestionnaireValidationAction = 'nextQuestion' | 'sendToRule' | 'terminateChat' | 'nextFlow' | 'addAutoTags' | string;
351
+ /** Built-in regex validation kinds for questionnaire questions. */
352
+ type RuleQuestionnaireValidationRegexType = 'email' | 'cpf' | 'lettersOnly' | 'numbersOnly' | 'customExpression' | '' | string;
353
+ /** Question input type for questionnaire questions. */
354
+ type RuleQuestionnaireQuestionType = 'interactive_menu' | string;
345
355
  /** Request query parameters for listing root rules. */
346
356
  type GetRootRulesRequest = {
347
357
  companyId: string;
@@ -363,35 +373,168 @@ type GetRulesRequest = {
363
373
  archiveStatus?: RuleArchiveStatus;
364
374
  associations?: RuleAssociation[];
365
375
  };
376
+ /**
377
+ * Request query parameters for counting rules (`GET /rules/count`).
378
+ * Shares the filter fields of `GetRulesRequest`, excluding pagination and associations.
379
+ */
380
+ type GetRulesCountRequest = {
381
+ companyId: string;
382
+ name?: string;
383
+ isRoot?: boolean;
384
+ action?: RuleAction[];
385
+ archiveStatus?: RuleArchiveStatus;
386
+ };
387
+ /**
388
+ * Request query parameters for fetching a rule by id (`GET /rules/:id`).
389
+ * When `rootOnly` is omitted the API defaults to `true` (no recursive flow tree).
390
+ * Pass `rootOnly: false` to expand nested `flow` via `buildRuleTree`.
391
+ */
392
+ type GetRuleByIdRequest = {
393
+ rootOnly?: boolean;
394
+ includeFlow?: boolean;
395
+ collapseDistinctId?: boolean;
396
+ distinctId?: boolean | string;
397
+ expand?: RuleAssociation[];
398
+ };
366
399
  /** Automatic message payload stored on a rule. */
367
400
  interface RuleAutomaticMessage {
368
401
  messageBody: string;
369
- caption: string | null;
370
- messageType: string;
402
+ caption?: string | null;
403
+ messageType?: string;
404
+ }
405
+ /** Call-on-queue payload stored on a rule. */
406
+ interface RuleCallOnQueue {
407
+ id: string;
408
+ attendanceGroupId?: string;
409
+ voiceTimeout?: number;
410
+ minutesToExpire?: number;
411
+ callToActionMessage?: string;
412
+ }
413
+ /** Custom HTTP header used by webhook requests. */
414
+ interface RuleWebhookHeader {
415
+ key: string;
416
+ value: string;
417
+ }
418
+ /** Mapping from a webhook JSON response path into a context key. */
419
+ interface RuleWebhookResponseMapping {
420
+ replaceValue: string;
421
+ jsonPath: string;
422
+ newJsonKey: string;
423
+ }
424
+ /** Webhook configuration stored on a rule. */
425
+ interface RuleWebhook {
426
+ customHeaders: RuleWebhookHeader[];
427
+ webhookMethodType: RuleHttpMethod;
428
+ webhookEndpoint: string;
429
+ webhookResponseMappings: RuleWebhookResponseMapping[];
430
+ }
431
+ /** Interactive option used by questionnaire `interactive_menu` questions. */
432
+ interface RuleQuestionnaireInteractiveOption {
433
+ id: string;
434
+ text: string;
435
+ }
436
+ /** Single question inside a questionnaire rule. */
437
+ interface RuleQuestionnaireQuestion {
438
+ questionText: string;
439
+ isResponsePrivateEnabled?: boolean;
440
+ isEnabledCustomDebounce?: boolean;
441
+ customDebounceSeconds?: number;
442
+ hasValidation?: boolean;
443
+ isUsingCustomValidation?: boolean;
444
+ customValidationUrl?: string;
445
+ customValidationMethod?: string;
446
+ validationRegexType?: RuleQuestionnaireValidationRegexType;
447
+ validationRegexPattern?: string;
448
+ maxValidationAttempts?: number;
449
+ onValidationFailureReply?: string;
450
+ onValidationSuccessAction?: RuleQuestionnaireValidationAction;
451
+ onValidationSuccessActionTarget?: string;
452
+ onValidationFailureAction?: RuleQuestionnaireValidationAction;
453
+ onValidationFailureActionTarget?: string;
454
+ onValidationFailureMessage?: string;
455
+ onValidationSuccessAutoTagIds?: number[];
456
+ onValidationFailureAutoTagIds?: number[];
457
+ questionType?: RuleQuestionnaireQuestionType;
458
+ interactiveOptions?: RuleQuestionnaireInteractiveOption[];
459
+ }
460
+ /** HTTP header sent with the questionnaire outbound request. */
461
+ interface RuleQuestionnaireHeader {
462
+ id?: number;
463
+ key: string;
464
+ value: string;
465
+ }
466
+ /** Body/query field sent with the questionnaire outbound request. */
467
+ interface RuleQuestionnaireBodyField {
468
+ id?: number;
469
+ key: string;
470
+ value: string;
471
+ isFilledByAnswer?: boolean;
472
+ answerIndex?: number | null;
473
+ }
474
+ /**
475
+ * Questionnaire configuration stored on a rule.
476
+ * The API may return `null`, a full object, or an empty object `{}`.
477
+ */
478
+ interface RuleQuestionnaire {
479
+ questions?: RuleQuestionnaireQuestion[];
480
+ questionHeaders?: RuleQuestionnaireHeader[];
481
+ questionBodyFields?: RuleQuestionnaireBodyField[];
482
+ questionEndpoint?: string;
483
+ questionMethodType?: RuleHttpMethod | '';
484
+ }
485
+ /** Text-response behavior for Meta flow rules (`settings.flow.textResponse`). */
486
+ interface RuleFlowTextResponse {
487
+ behavior: 'require_flow' | 'redirect_rule';
488
+ sendReminder?: boolean;
489
+ reminderMessage?: string;
490
+ targetRuleId?: string;
491
+ }
492
+ /** Meta interactive flow configuration (`settings.flow`). */
493
+ interface RuleFlowSettings {
494
+ configId: string;
495
+ metaFlowId: string;
496
+ flowAction: 'navigate' | 'data_exchange';
497
+ flowCta: string;
498
+ flowBody: string;
499
+ webhookUrl?: string;
500
+ firstScreen?: string;
501
+ flowHeader?: string;
502
+ flowFooter?: string;
503
+ contextKey?: string;
504
+ textResponse?: RuleFlowTextResponse;
505
+ }
506
+ /**
507
+ * Rule settings JSON.
508
+ * Common keys: `interactiveType` (URA) and `flow` (action `flow`).
509
+ */
510
+ interface RuleSettings {
511
+ interactiveType?: RuleInteractiveType;
512
+ flow?: RuleFlowSettings;
513
+ [key: string]: unknown;
371
514
  }
372
515
  /** Rule entity returned by the Chat Config API. */
373
516
  interface Rule {
374
517
  id: string;
375
518
  companyId: string;
376
519
  name: string;
377
- action: string;
520
+ action: RuleAction | string;
378
521
  message: string | null;
379
522
  automaticMessage: RuleAutomaticMessage | null;
380
- callOnQueue: Record<string, unknown> | null;
523
+ callOnQueue: RuleCallOnQueue | null;
381
524
  uraDescription: string | null;
382
525
  interactiveMessageId: string | null;
383
526
  configId: string | null;
384
527
  queueId: string | null;
385
528
  redirectQueue: string | null;
386
529
  redirectRuleId: string | null;
387
- questionnaire: Record<string, unknown> | null;
388
- webhook: Record<string, unknown> | null;
530
+ questionnaire: RuleQuestionnaire | null;
531
+ webhook: RuleWebhook | null;
389
532
  isRoot: boolean;
390
533
  redirectDefault: boolean;
391
534
  redirectTimeout: number;
392
535
  delay: number | null;
393
536
  disableTyping: boolean;
394
- settings: Record<string, unknown> | null;
537
+ settings: RuleSettings | null;
395
538
  archivedAt: string | null;
396
539
  autoTagEnabled: boolean;
397
540
  autoTagIds: number[];
@@ -399,11 +542,17 @@ interface Rule {
399
542
  updatedAt: string;
400
543
  flow?: Rule[];
401
544
  }
545
+ /** Response returned by `GET /rules/:id`. */
546
+ type RuleResponse = Rule;
402
547
  /** Response returned by the Chat Config API when listing paginated rules. */
403
548
  type RulesResponse = {
404
549
  data: Rule[];
405
550
  };
551
+ /** Response returned by the Chat Config API when counting rules. */
552
+ type RulesCountResponse = {
553
+ total: number;
554
+ };
406
555
  /** Response returned by the Chat Config API when listing root rules. */
407
556
  type RootRulesResponse = RulesResponse;
408
557
 
409
- export type { Config, ConfigListByProviderResponse, ConfigProvider, DistributionType, FindOrCreateQueueRuleRequest, GetConfigsByProviderParams, GetMemberQueuesRequest, GetProviderConfigurationsParams, GetProviderDisplayInfoParams, GetRootRulesRequest, GetRulesRequest, GetServiceGroupsParams, MetaTemplateButton, MetaTemplateConfigResponse, MetaTemplateConfigsResponse, Provider, ProviderConfiguration, ProviderConfigurationsResponse, ProviderDisplayInfoResponse, ProviderListResponse, ProviderName, Queue, QueueListResponse, QueueMember, QueueRule, RootRulesResponse, Rule, RuleAction, RuleArchiveStatus, RuleAssociation, RuleAutomaticMessage, RulesResponse, ServiceGroup, ServiceGroupsResponse, WhatsAppProviderSettings, WidgetProviderSettings };
558
+ export type { Config, ConfigListByProviderResponse, ConfigProvider, DistributionType, FindOrCreateQueueRuleRequest, GetConfigsByProviderParams, GetMemberQueuesRequest, GetProviderConfigurationsParams, GetProviderDisplayInfoParams, GetRootRulesRequest, GetRuleByIdRequest, GetRulesCountRequest, GetRulesRequest, GetServiceGroupsParams, MetaTemplateButton, MetaTemplateConfigResponse, MetaTemplateConfigsResponse, Provider, ProviderConfiguration, ProviderConfigurationsResponse, ProviderDisplayInfoResponse, ProviderListResponse, ProviderName, Queue, QueueListResponse, QueueMember, QueueRule, RootRulesResponse, Rule, RuleAction, RuleArchiveStatus, RuleAssociation, RuleAutomaticMessage, RuleCallOnQueue, RuleFlowSettings, RuleFlowTextResponse, RuleHttpMethod, RuleInteractiveType, RuleQuestionnaire, RuleQuestionnaireBodyField, RuleQuestionnaireHeader, RuleQuestionnaireInteractiveOption, RuleQuestionnaireQuestion, RuleQuestionnaireQuestionType, RuleQuestionnaireValidationAction, RuleQuestionnaireValidationRegexType, RuleResponse, RuleSettings, RuleWebhook, RuleWebhookHeader, RuleWebhookResponseMapping, RulesCountResponse, RulesResponse, ServiceGroup, ServiceGroupsResponse, WhatsAppProviderSettings, WidgetProviderSettings };
@@ -337,11 +337,21 @@ interface QueueRule extends Rule {
337
337
  flow?: Rule[];
338
338
  }
339
339
  /** Known rule action values used by the Chat Config API. */
340
- type RuleAction = 'queue' | 'interactiveMessage' | 'message' | 'automaticMessage' | 'callOnQueue' | 'ura' | 'webhook' | 'questionnaire' | 'flow' | 'csat';
340
+ type RuleAction = 'queue' | 'interactiveMessage' | 'message' | 'automaticMessage' | 'automatic-message' | 'callOnQueue' | 'ura' | 'webhook' | 'questionnaire' | 'flow' | 'csat';
341
341
  /** Archive filter for listing rules. Matches `GET /rules/paginated` query validation. */
342
342
  type RuleArchiveStatus = 'archived' | 'unarchived' | 'all';
343
343
  /** Associations that can be eager-loaded when listing paginated rules. */
344
344
  type RuleAssociation = 'flow';
345
+ /** HTTP method used by webhook and questionnaire outbound requests. */
346
+ type RuleHttpMethod = 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE' | string;
347
+ /** Interactive presentation for URA rules (`settings.interactiveType`). */
348
+ type RuleInteractiveType = 'button' | 'list';
349
+ /** Validation action taken after a questionnaire answer is validated. */
350
+ type RuleQuestionnaireValidationAction = 'nextQuestion' | 'sendToRule' | 'terminateChat' | 'nextFlow' | 'addAutoTags' | string;
351
+ /** Built-in regex validation kinds for questionnaire questions. */
352
+ type RuleQuestionnaireValidationRegexType = 'email' | 'cpf' | 'lettersOnly' | 'numbersOnly' | 'customExpression' | '' | string;
353
+ /** Question input type for questionnaire questions. */
354
+ type RuleQuestionnaireQuestionType = 'interactive_menu' | string;
345
355
  /** Request query parameters for listing root rules. */
346
356
  type GetRootRulesRequest = {
347
357
  companyId: string;
@@ -363,35 +373,168 @@ type GetRulesRequest = {
363
373
  archiveStatus?: RuleArchiveStatus;
364
374
  associations?: RuleAssociation[];
365
375
  };
376
+ /**
377
+ * Request query parameters for counting rules (`GET /rules/count`).
378
+ * Shares the filter fields of `GetRulesRequest`, excluding pagination and associations.
379
+ */
380
+ type GetRulesCountRequest = {
381
+ companyId: string;
382
+ name?: string;
383
+ isRoot?: boolean;
384
+ action?: RuleAction[];
385
+ archiveStatus?: RuleArchiveStatus;
386
+ };
387
+ /**
388
+ * Request query parameters for fetching a rule by id (`GET /rules/:id`).
389
+ * When `rootOnly` is omitted the API defaults to `true` (no recursive flow tree).
390
+ * Pass `rootOnly: false` to expand nested `flow` via `buildRuleTree`.
391
+ */
392
+ type GetRuleByIdRequest = {
393
+ rootOnly?: boolean;
394
+ includeFlow?: boolean;
395
+ collapseDistinctId?: boolean;
396
+ distinctId?: boolean | string;
397
+ expand?: RuleAssociation[];
398
+ };
366
399
  /** Automatic message payload stored on a rule. */
367
400
  interface RuleAutomaticMessage {
368
401
  messageBody: string;
369
- caption: string | null;
370
- messageType: string;
402
+ caption?: string | null;
403
+ messageType?: string;
404
+ }
405
+ /** Call-on-queue payload stored on a rule. */
406
+ interface RuleCallOnQueue {
407
+ id: string;
408
+ attendanceGroupId?: string;
409
+ voiceTimeout?: number;
410
+ minutesToExpire?: number;
411
+ callToActionMessage?: string;
412
+ }
413
+ /** Custom HTTP header used by webhook requests. */
414
+ interface RuleWebhookHeader {
415
+ key: string;
416
+ value: string;
417
+ }
418
+ /** Mapping from a webhook JSON response path into a context key. */
419
+ interface RuleWebhookResponseMapping {
420
+ replaceValue: string;
421
+ jsonPath: string;
422
+ newJsonKey: string;
423
+ }
424
+ /** Webhook configuration stored on a rule. */
425
+ interface RuleWebhook {
426
+ customHeaders: RuleWebhookHeader[];
427
+ webhookMethodType: RuleHttpMethod;
428
+ webhookEndpoint: string;
429
+ webhookResponseMappings: RuleWebhookResponseMapping[];
430
+ }
431
+ /** Interactive option used by questionnaire `interactive_menu` questions. */
432
+ interface RuleQuestionnaireInteractiveOption {
433
+ id: string;
434
+ text: string;
435
+ }
436
+ /** Single question inside a questionnaire rule. */
437
+ interface RuleQuestionnaireQuestion {
438
+ questionText: string;
439
+ isResponsePrivateEnabled?: boolean;
440
+ isEnabledCustomDebounce?: boolean;
441
+ customDebounceSeconds?: number;
442
+ hasValidation?: boolean;
443
+ isUsingCustomValidation?: boolean;
444
+ customValidationUrl?: string;
445
+ customValidationMethod?: string;
446
+ validationRegexType?: RuleQuestionnaireValidationRegexType;
447
+ validationRegexPattern?: string;
448
+ maxValidationAttempts?: number;
449
+ onValidationFailureReply?: string;
450
+ onValidationSuccessAction?: RuleQuestionnaireValidationAction;
451
+ onValidationSuccessActionTarget?: string;
452
+ onValidationFailureAction?: RuleQuestionnaireValidationAction;
453
+ onValidationFailureActionTarget?: string;
454
+ onValidationFailureMessage?: string;
455
+ onValidationSuccessAutoTagIds?: number[];
456
+ onValidationFailureAutoTagIds?: number[];
457
+ questionType?: RuleQuestionnaireQuestionType;
458
+ interactiveOptions?: RuleQuestionnaireInteractiveOption[];
459
+ }
460
+ /** HTTP header sent with the questionnaire outbound request. */
461
+ interface RuleQuestionnaireHeader {
462
+ id?: number;
463
+ key: string;
464
+ value: string;
465
+ }
466
+ /** Body/query field sent with the questionnaire outbound request. */
467
+ interface RuleQuestionnaireBodyField {
468
+ id?: number;
469
+ key: string;
470
+ value: string;
471
+ isFilledByAnswer?: boolean;
472
+ answerIndex?: number | null;
473
+ }
474
+ /**
475
+ * Questionnaire configuration stored on a rule.
476
+ * The API may return `null`, a full object, or an empty object `{}`.
477
+ */
478
+ interface RuleQuestionnaire {
479
+ questions?: RuleQuestionnaireQuestion[];
480
+ questionHeaders?: RuleQuestionnaireHeader[];
481
+ questionBodyFields?: RuleQuestionnaireBodyField[];
482
+ questionEndpoint?: string;
483
+ questionMethodType?: RuleHttpMethod | '';
484
+ }
485
+ /** Text-response behavior for Meta flow rules (`settings.flow.textResponse`). */
486
+ interface RuleFlowTextResponse {
487
+ behavior: 'require_flow' | 'redirect_rule';
488
+ sendReminder?: boolean;
489
+ reminderMessage?: string;
490
+ targetRuleId?: string;
491
+ }
492
+ /** Meta interactive flow configuration (`settings.flow`). */
493
+ interface RuleFlowSettings {
494
+ configId: string;
495
+ metaFlowId: string;
496
+ flowAction: 'navigate' | 'data_exchange';
497
+ flowCta: string;
498
+ flowBody: string;
499
+ webhookUrl?: string;
500
+ firstScreen?: string;
501
+ flowHeader?: string;
502
+ flowFooter?: string;
503
+ contextKey?: string;
504
+ textResponse?: RuleFlowTextResponse;
505
+ }
506
+ /**
507
+ * Rule settings JSON.
508
+ * Common keys: `interactiveType` (URA) and `flow` (action `flow`).
509
+ */
510
+ interface RuleSettings {
511
+ interactiveType?: RuleInteractiveType;
512
+ flow?: RuleFlowSettings;
513
+ [key: string]: unknown;
371
514
  }
372
515
  /** Rule entity returned by the Chat Config API. */
373
516
  interface Rule {
374
517
  id: string;
375
518
  companyId: string;
376
519
  name: string;
377
- action: string;
520
+ action: RuleAction | string;
378
521
  message: string | null;
379
522
  automaticMessage: RuleAutomaticMessage | null;
380
- callOnQueue: Record<string, unknown> | null;
523
+ callOnQueue: RuleCallOnQueue | null;
381
524
  uraDescription: string | null;
382
525
  interactiveMessageId: string | null;
383
526
  configId: string | null;
384
527
  queueId: string | null;
385
528
  redirectQueue: string | null;
386
529
  redirectRuleId: string | null;
387
- questionnaire: Record<string, unknown> | null;
388
- webhook: Record<string, unknown> | null;
530
+ questionnaire: RuleQuestionnaire | null;
531
+ webhook: RuleWebhook | null;
389
532
  isRoot: boolean;
390
533
  redirectDefault: boolean;
391
534
  redirectTimeout: number;
392
535
  delay: number | null;
393
536
  disableTyping: boolean;
394
- settings: Record<string, unknown> | null;
537
+ settings: RuleSettings | null;
395
538
  archivedAt: string | null;
396
539
  autoTagEnabled: boolean;
397
540
  autoTagIds: number[];
@@ -399,11 +542,17 @@ interface Rule {
399
542
  updatedAt: string;
400
543
  flow?: Rule[];
401
544
  }
545
+ /** Response returned by `GET /rules/:id`. */
546
+ type RuleResponse = Rule;
402
547
  /** Response returned by the Chat Config API when listing paginated rules. */
403
548
  type RulesResponse = {
404
549
  data: Rule[];
405
550
  };
551
+ /** Response returned by the Chat Config API when counting rules. */
552
+ type RulesCountResponse = {
553
+ total: number;
554
+ };
406
555
  /** Response returned by the Chat Config API when listing root rules. */
407
556
  type RootRulesResponse = RulesResponse;
408
557
 
409
- export type { Config, ConfigListByProviderResponse, ConfigProvider, DistributionType, FindOrCreateQueueRuleRequest, GetConfigsByProviderParams, GetMemberQueuesRequest, GetProviderConfigurationsParams, GetProviderDisplayInfoParams, GetRootRulesRequest, GetRulesRequest, GetServiceGroupsParams, MetaTemplateButton, MetaTemplateConfigResponse, MetaTemplateConfigsResponse, Provider, ProviderConfiguration, ProviderConfigurationsResponse, ProviderDisplayInfoResponse, ProviderListResponse, ProviderName, Queue, QueueListResponse, QueueMember, QueueRule, RootRulesResponse, Rule, RuleAction, RuleArchiveStatus, RuleAssociation, RuleAutomaticMessage, RulesResponse, ServiceGroup, ServiceGroupsResponse, WhatsAppProviderSettings, WidgetProviderSettings };
558
+ export type { Config, ConfigListByProviderResponse, ConfigProvider, DistributionType, FindOrCreateQueueRuleRequest, GetConfigsByProviderParams, GetMemberQueuesRequest, GetProviderConfigurationsParams, GetProviderDisplayInfoParams, GetRootRulesRequest, GetRuleByIdRequest, GetRulesCountRequest, GetRulesRequest, GetServiceGroupsParams, MetaTemplateButton, MetaTemplateConfigResponse, MetaTemplateConfigsResponse, Provider, ProviderConfiguration, ProviderConfigurationsResponse, ProviderDisplayInfoResponse, ProviderListResponse, ProviderName, Queue, QueueListResponse, QueueMember, QueueRule, RootRulesResponse, Rule, RuleAction, RuleArchiveStatus, RuleAssociation, RuleAutomaticMessage, RuleCallOnQueue, RuleFlowSettings, RuleFlowTextResponse, RuleHttpMethod, RuleInteractiveType, RuleQuestionnaire, RuleQuestionnaireBodyField, RuleQuestionnaireHeader, RuleQuestionnaireInteractiveOption, RuleQuestionnaireQuestion, RuleQuestionnaireQuestionType, RuleQuestionnaireValidationAction, RuleQuestionnaireValidationRegexType, RuleResponse, RuleSettings, RuleWebhook, RuleWebhookHeader, RuleWebhookResponseMapping, RulesCountResponse, RulesResponse, ServiceGroup, ServiceGroupsResponse, WhatsAppProviderSettings, WidgetProviderSettings };
package/dist/index.d.mts CHANGED
@@ -1,8 +1,8 @@
1
1
  import { AxiosInstance } from 'axios';
2
2
  import { CompanyResponse, UpdateCompanyRequest, GetSupportWidgetIdResponse, UpdateSupportWidgetIdRequest, UpdateSupportWidgetIdResponse, CompanyQueue, CompanyWithConfigsResponse, StrongPasswordOptionsResponse, CompanyConfigKey, CompanyConfigResponse, CompanyJsonConfigKey, UpdateCompanyJsonConfigRequest, CompanyBooleanConfigKey, UpdateCompanyBooleanConfigRequest, CompanyStringConfigKey, UpdateCompanyStringConfigRequest, User, ListUsersRequest, ListUsersResponse, WorkGroupListResponse, WorkGroupResponse, UserProfile, WorkGroupMembersResponse, GetAllUsersParams, GetAllUsersResponse, GetManagedUsersResponse, GetUserByIdResponse, UpdateCompanyUserRequest, UpdateUserPasswordRequest, UpdateUserPasswordResponse, UpdateCompanyUserAvatarResponse, GenerateTwoFactorOtpRequest, GenerateTwoFactorOtpResponse, ValidateTwoFactorOtpRequest, ValidateTwoFactorOtpResponse, AnnouncementListFilters, AnnouncementListResponse, Announcement, CreateAnnouncementRequest, UpdateAnnouncementRequest, UpdateAnnouncementStatusRequest, AnnouncementType, ActiveAnnouncementQuery, ActiveAnnouncement } from './customer-service/contracts/index.mjs';
3
3
  export { AnnouncementAppearance, AnnouncementButton, AnnouncementCompany, AnnouncementPayload, AnnouncementTargetingRuleUrl, AnnouncementTargetingRules, AnnouncementVisualStatus, CompanyData, ListUsersInclude, ListUsersProfile, ListUsersStatus, ListUsersType, ManagedUser, StrongPasswordOptions, UserBond, WorkGroup, WorkGroupMember } from './customer-service/contracts/index.mjs';
4
- import { ProviderListResponse, Config, GetProviderConfigurationsParams, ProviderConfigurationsResponse, GetProviderDisplayInfoParams, ProviderDisplayInfoResponse, GetConfigsByProviderParams, ConfigListByProviderResponse, Queue, GetMemberQueuesRequest, QueueMember, GetServiceGroupsParams, ServiceGroupsResponse, MetaTemplateConfigResponse, MetaTemplateConfigsResponse, FindOrCreateQueueRuleRequest, QueueRule, GetRootRulesRequest, RootRulesResponse, GetRulesRequest, RulesResponse } from './chat-config/contracts/index.mjs';
5
- export { ConfigProvider, DistributionType, MetaTemplateButton, Provider, ProviderConfiguration, ProviderName, QueueListResponse, Rule, RuleAction, RuleArchiveStatus, RuleAssociation, RuleAutomaticMessage, ServiceGroup, WhatsAppProviderSettings, WidgetProviderSettings } from './chat-config/contracts/index.mjs';
4
+ import { ProviderListResponse, Config, GetProviderConfigurationsParams, ProviderConfigurationsResponse, GetProviderDisplayInfoParams, ProviderDisplayInfoResponse, GetConfigsByProviderParams, ConfigListByProviderResponse, Queue, GetMemberQueuesRequest, QueueMember, GetServiceGroupsParams, ServiceGroupsResponse, MetaTemplateConfigResponse, MetaTemplateConfigsResponse, FindOrCreateQueueRuleRequest, QueueRule, GetRuleByIdRequest, RuleResponse, GetRootRulesRequest, RootRulesResponse, GetRulesRequest, RulesResponse, GetRulesCountRequest, RulesCountResponse } from './chat-config/contracts/index.mjs';
5
+ export { ConfigProvider, DistributionType, MetaTemplateButton, Provider, ProviderConfiguration, ProviderName, QueueListResponse, Rule, RuleAction, RuleArchiveStatus, RuleAssociation, RuleAutomaticMessage, RuleCallOnQueue, RuleFlowSettings, RuleFlowTextResponse, RuleHttpMethod, RuleInteractiveType, RuleQuestionnaire, RuleQuestionnaireBodyField, RuleQuestionnaireHeader, RuleQuestionnaireInteractiveOption, RuleQuestionnaireQuestion, RuleQuestionnaireQuestionType, RuleQuestionnaireValidationAction, RuleQuestionnaireValidationRegexType, RuleSettings, RuleWebhook, RuleWebhookHeader, RuleWebhookResponseMapping, ServiceGroup, WhatsAppProviderSettings, WidgetProviderSettings } from './chat-config/contracts/index.mjs';
6
6
  import { CampaignQueryParams, CampaignPaginatedResponse, Campaign, CreateCampaignRequest, PatchCampaignRequest, CampaignContactQueryParams, CampaignContactPaginatedResponse, CampaignContactResponse, CreateCampaignContactRequest, PatchCampaignContactRequest, CampaignContactsDashboardQueryParams, CampaignContactsDashboardData, CampaignUser, CampaignWorkGroupQueryParams, CampaignWorkGroupPaginatedResponse, CreateCampaignWorkGroupRequest, CampaignWorkGroup, CampaignCompanyQueryParams, CampaignCompanyPaginatedResponse, CampaignCompanyResponse, EnableCampaignCompanyRequest, CampaignAccessResponse } from './campaigns/contracts/index.mjs';
7
7
  export { CampaignAccessReason, CampaignContactCampaignStatus, CampaignContactDispatchStatus, CampaignContactFilter, CampaignContactLikeQueryOperators, CampaignContactQueryOperators, CampaignContactQueryValue, CampaignContactSortDirection, CampaignContactSortParams, CampaignContactsDashboardChannelPerformance, CampaignContactsDashboardEvolutionItem, CampaignContactsDashboardExactQueryOperators, CampaignContactsDashboardFunnelItem, CampaignContactsDashboardInterval, CampaignContactsDashboardMetrics, CampaignContactsDashboardQueryValue, CampaignContactsDashboardRangeQueryOperators, CampaignContactsDashboardStatusDistribution, CampaignContactsDashboardStatusMetrics, CampaignContactsDashboardSummary, CampaignContactsDashboardTopCampaign, CampaignNameLikeQueryOperators, CampaignProvider, CampaignRetryConfig, CampaignSchedule, CampaignStatus, WhatsAppPayload, WhatsAppTemplateComponent } from './campaigns/contracts/index.mjs';
8
8
  import { GetConfigTemplatesParams, GetConfigTemplatesResponse, FlowReadiness, FlowCatalogParams, FlowCatalogResponse, FlowDefinition } from './chat-adapter/contracts/index.mjs';
@@ -299,6 +299,14 @@ declare class ChatConfigGateway {
299
299
  * @returns The found or created queue rule.
300
300
  */
301
301
  findOrCreateQueueRule(payload: FindOrCreateQueueRuleRequest): Promise<QueueRule>;
302
+ /**
303
+ * Retrieves a rule by its ID (`GET /rules/:id`).
304
+ * Pass `rootOnly: false` to expand the nested `flow` tree recursively.
305
+ * @param ruleId - The unique identifier of the rule.
306
+ * @param params - Optional query parameters (`rootOnly`, `includeFlow`, etc.).
307
+ * @returns The rule, optionally with nested `flow`.
308
+ */
309
+ getRuleById(ruleId: string, params?: GetRuleByIdRequest): Promise<RuleResponse>;
302
310
  /**
303
311
  * @param params - The company and pagination parameters.
304
312
  * @returns The paginated initial service rules.
@@ -310,6 +318,12 @@ declare class ChatConfigGateway {
310
318
  * @returns The paginated rules matching the given filters.
311
319
  */
312
320
  getRules(params: GetRulesRequest): Promise<RulesResponse>;
321
+ /**
322
+ * Counts rules matching the given filters.
323
+ * @param params - Query parameters for filtering rules (same filters as `getRules`, without pagination/associations).
324
+ * @returns The total number of rules matching the filters.
325
+ */
326
+ getRulesCount(params: GetRulesCountRequest): Promise<RulesCountResponse>;
313
327
  }
314
328
 
315
329
  /**
@@ -1009,4 +1023,4 @@ declare const configure: (params: GatewayClientParams) => void;
1009
1023
  */
1010
1024
  declare function gateway<T extends keyof GatewayMap>(service: T): GatewayMap[T];
1011
1025
 
1012
- export { AccessPackage, ActiveAnnouncement, ActiveAnnouncementQuery, Announcement, AnnouncementListFilters, AnnouncementListResponse, AnnouncementType, AttachmentByIdResponse, AudioConvertResponse, AutomationPartner, AutomationPartnerAction, CallEndpoint, CallReportCompanyUsageRequest, CallReportCompanyUsageResponse, Campaign, CampaignAccessResponse, CampaignCompanyPaginatedResponse, CampaignCompanyQueryParams, CampaignCompanyResponse, CampaignContactPaginatedResponse, CampaignContactQueryParams, CampaignContactResponse, CampaignContactsDashboardData, CampaignContactsDashboardQueryParams, CampaignPaginatedResponse, CampaignQueryParams, CampaignUser, CampaignWorkGroup, CampaignWorkGroupPaginatedResponse, CampaignWorkGroupQueryParams, CancelInvitationRequest, CaseFeedByActionItem, CasePermissions, CaseStatus, CaseTimeEntry, ChatWebserviceCompanyUsageRequest, ChatWebserviceCompanyUsageResponse, CloneCaseRequest, ClonedCase, CommentHistoryPage, CompanyAccessPackageItem, CompanyBooleanConfigKey, CompanyConfigKey, CompanyConfigResponse, CompanyJsonConfigKey, CompanyQueue, CompanyResource, CompanyResponse, CompanyStringConfigKey, CompanyWithConfigsResponse, Config, ConfigListByProviderResponse, ContactCategoryResponse, ContactHistoryResponse, ContactPhoneSearchResponse, ContactResponse, CreateAnnouncementRequest, CreateAutomationPartnerRequest, CreateCampaignContactRequest, CreateCampaignRequest, CreateCampaignWorkGroupRequest, CreateCaseStatusRequest, CreateCompanyAccessPackagePayload, CreateIntegrationActionRequest, CreateIntegrationFieldRequest, CreateIntegrationPartnerRequest, CreateTimeEntryRequest, CreateUserPreferenceRequest, CreateWebhookRequest$1 as CreateWebhookRequest, DeleteIntegrationActionParams, DeleteIntegrationFieldParams, DeleteIntegrationPartnerParams, DeleteTimeEntryRequest, DeleteUserDeviceResponse, DeleteUserPreferenceParams, DeleteUserPreferenceResponse, EnableCampaignCompanyRequest, FindContactByIdResponse, FindOrCreateContactRequest, FindOrCreateQueueRuleRequest, FlowCatalogParams, FlowCatalogResponse, FlowDefinition, FlowReadiness, ForwardMessageRequest, GenerateTwoFactorOtpRequest, GenerateTwoFactorOtpResponse, GetAccessPackagesParams, GetAllUsersParams, GetAllUsersResponse, GetAttachmentByIdRequest, GetAutomationPartnerRequest, GetCaseFeedByActionsRequest, GetCommentHistoryRequest, GetCompanyAccessPackagesParams, GetCompanyResourcesParams, GetConfigTemplatesParams, GetConfigTemplatesResponse, GetConfigsByProviderParams, GetContactPhonesParams, GetInitialContextRequest, GetInitialContextResponse, GetIntegrationHooksCatalogRequest, GetIntegrationPartnersByCompanyRequest, GetManagedUsersResponse, GetMemberQueuesRequest, GetMessagesByCursorRequest, GetMessagesByCursorResponse, GetPresignedUrlRequest, GetProviderConfigurationsParams, GetProviderDisplayInfoParams, GetRoomByIdRequest, GetRootRulesRequest, GetRulesRequest, GetServiceGroupsParams, GetSupportWidgetIdResponse, GetSystemNotificationsParams, GetSystemNotificationsResponse, GetUserByIdResponse, GetUserDevicesParams, GetUserDevicesResponse, GetUserPreferencesParams, GetWebhooksByCompanyRequest$1 as GetWebhooksByCompanyRequest, HookCatalogItem, IntegrationAction, IntegrationField, IntegrationPartner, InvitationResponse, ListAutomationActionsRequest, ListAutomationPartnersRequest, ListCaseStatusesRequest, ListCasesRequest, ListCasesResponse, ListContactHistoryRequest, ListInvitationsRequest, ListLiveUserRoomsRequest, ListTimeEntriesPage, ListTimeEntriesRequest, ListUsersRequest, ListUsersResponse, LiveUserRoomResponse, MarkMessagesAsReadRequest, MarkMessagesAsReadResponse, MessageResponse, MetaTemplateConfigResponse, MetaTemplateConfigsResponse, PaginatedResult, PatchCampaignContactRequest, PatchCampaignRequest, ProviderConfigurationsResponse, ProviderDisplayInfoResponse, ProviderListResponse, Queue, QueueMember, QueueRule, RegisterUserDeviceRequest, RegisterUserDeviceResponse, ReplyInvitationRequest, RoomMemberResponse, RoomResponse, RootRulesResponse, RulesResponse, SERVICE_GATEWAYS, SERVICE_GATEWAYS as SERVICE_GATEWAYS_TYPE, SendAttachmentMessageResponse, SendMessageRequest, ServiceGroupsResponse, StrongPasswordOptionsResponse, UpdateAnnouncementRequest, UpdateAnnouncementStatusRequest, UpdateCasePermissionsRequest, UpdateCaseStatusRequest, UpdateCompanyAccessPackagePayload, UpdateCompanyBooleanConfigRequest, UpdateCompanyJsonConfigRequest, UpdateCompanyRequest, UpdateCompanyStringConfigRequest, UpdateCompanyUserAvatarResponse, UpdateCompanyUserRequest, UpdateIntegrationActionParams, UpdateIntegrationFieldParams, UpdateMemberInRoomRequest, UpdateSupportWidgetIdRequest, UpdateSupportWidgetIdResponse, UpdateTimeEntryRequest, UpdateUserPasswordRequest, UpdateUserPasswordResponse, UploadPresignedUrlResponse, User, UserPreference, UserProfile, ValidateTwoFactorOtpRequest, ValidateTwoFactorOtpResponse, WorkGroupListResponse, WorkGroupMembersResponse, WorkGroupResponse, configure, gateway };
1026
+ export { AccessPackage, ActiveAnnouncement, ActiveAnnouncementQuery, Announcement, AnnouncementListFilters, AnnouncementListResponse, AnnouncementType, AttachmentByIdResponse, AudioConvertResponse, AutomationPartner, AutomationPartnerAction, CallEndpoint, CallReportCompanyUsageRequest, CallReportCompanyUsageResponse, Campaign, CampaignAccessResponse, CampaignCompanyPaginatedResponse, CampaignCompanyQueryParams, CampaignCompanyResponse, CampaignContactPaginatedResponse, CampaignContactQueryParams, CampaignContactResponse, CampaignContactsDashboardData, CampaignContactsDashboardQueryParams, CampaignPaginatedResponse, CampaignQueryParams, CampaignUser, CampaignWorkGroup, CampaignWorkGroupPaginatedResponse, CampaignWorkGroupQueryParams, CancelInvitationRequest, CaseFeedByActionItem, CasePermissions, CaseStatus, CaseTimeEntry, ChatWebserviceCompanyUsageRequest, ChatWebserviceCompanyUsageResponse, CloneCaseRequest, ClonedCase, CommentHistoryPage, CompanyAccessPackageItem, CompanyBooleanConfigKey, CompanyConfigKey, CompanyConfigResponse, CompanyJsonConfigKey, CompanyQueue, CompanyResource, CompanyResponse, CompanyStringConfigKey, CompanyWithConfigsResponse, Config, ConfigListByProviderResponse, ContactCategoryResponse, ContactHistoryResponse, ContactPhoneSearchResponse, ContactResponse, CreateAnnouncementRequest, CreateAutomationPartnerRequest, CreateCampaignContactRequest, CreateCampaignRequest, CreateCampaignWorkGroupRequest, CreateCaseStatusRequest, CreateCompanyAccessPackagePayload, CreateIntegrationActionRequest, CreateIntegrationFieldRequest, CreateIntegrationPartnerRequest, CreateTimeEntryRequest, CreateUserPreferenceRequest, CreateWebhookRequest$1 as CreateWebhookRequest, DeleteIntegrationActionParams, DeleteIntegrationFieldParams, DeleteIntegrationPartnerParams, DeleteTimeEntryRequest, DeleteUserDeviceResponse, DeleteUserPreferenceParams, DeleteUserPreferenceResponse, EnableCampaignCompanyRequest, FindContactByIdResponse, FindOrCreateContactRequest, FindOrCreateQueueRuleRequest, FlowCatalogParams, FlowCatalogResponse, FlowDefinition, FlowReadiness, ForwardMessageRequest, GenerateTwoFactorOtpRequest, GenerateTwoFactorOtpResponse, GetAccessPackagesParams, GetAllUsersParams, GetAllUsersResponse, GetAttachmentByIdRequest, GetAutomationPartnerRequest, GetCaseFeedByActionsRequest, GetCommentHistoryRequest, GetCompanyAccessPackagesParams, GetCompanyResourcesParams, GetConfigTemplatesParams, GetConfigTemplatesResponse, GetConfigsByProviderParams, GetContactPhonesParams, GetInitialContextRequest, GetInitialContextResponse, GetIntegrationHooksCatalogRequest, GetIntegrationPartnersByCompanyRequest, GetManagedUsersResponse, GetMemberQueuesRequest, GetMessagesByCursorRequest, GetMessagesByCursorResponse, GetPresignedUrlRequest, GetProviderConfigurationsParams, GetProviderDisplayInfoParams, GetRoomByIdRequest, GetRootRulesRequest, GetRuleByIdRequest, GetRulesCountRequest, GetRulesRequest, GetServiceGroupsParams, GetSupportWidgetIdResponse, GetSystemNotificationsParams, GetSystemNotificationsResponse, GetUserByIdResponse, GetUserDevicesParams, GetUserDevicesResponse, GetUserPreferencesParams, GetWebhooksByCompanyRequest$1 as GetWebhooksByCompanyRequest, HookCatalogItem, IntegrationAction, IntegrationField, IntegrationPartner, InvitationResponse, ListAutomationActionsRequest, ListAutomationPartnersRequest, ListCaseStatusesRequest, ListCasesRequest, ListCasesResponse, ListContactHistoryRequest, ListInvitationsRequest, ListLiveUserRoomsRequest, ListTimeEntriesPage, ListTimeEntriesRequest, ListUsersRequest, ListUsersResponse, LiveUserRoomResponse, MarkMessagesAsReadRequest, MarkMessagesAsReadResponse, MessageResponse, MetaTemplateConfigResponse, MetaTemplateConfigsResponse, PaginatedResult, PatchCampaignContactRequest, PatchCampaignRequest, ProviderConfigurationsResponse, ProviderDisplayInfoResponse, ProviderListResponse, Queue, QueueMember, QueueRule, RegisterUserDeviceRequest, RegisterUserDeviceResponse, ReplyInvitationRequest, RoomMemberResponse, RoomResponse, RootRulesResponse, RuleResponse, RulesCountResponse, RulesResponse, SERVICE_GATEWAYS, SERVICE_GATEWAYS as SERVICE_GATEWAYS_TYPE, SendAttachmentMessageResponse, SendMessageRequest, ServiceGroupsResponse, StrongPasswordOptionsResponse, UpdateAnnouncementRequest, UpdateAnnouncementStatusRequest, UpdateCasePermissionsRequest, UpdateCaseStatusRequest, UpdateCompanyAccessPackagePayload, UpdateCompanyBooleanConfigRequest, UpdateCompanyJsonConfigRequest, UpdateCompanyRequest, UpdateCompanyStringConfigRequest, UpdateCompanyUserAvatarResponse, UpdateCompanyUserRequest, UpdateIntegrationActionParams, UpdateIntegrationFieldParams, UpdateMemberInRoomRequest, UpdateSupportWidgetIdRequest, UpdateSupportWidgetIdResponse, UpdateTimeEntryRequest, UpdateUserPasswordRequest, UpdateUserPasswordResponse, UploadPresignedUrlResponse, User, UserPreference, UserProfile, ValidateTwoFactorOtpRequest, ValidateTwoFactorOtpResponse, WorkGroupListResponse, WorkGroupMembersResponse, WorkGroupResponse, configure, gateway };
package/dist/index.d.ts CHANGED
@@ -1,8 +1,8 @@
1
1
  import { AxiosInstance } from 'axios';
2
2
  import { CompanyResponse, UpdateCompanyRequest, GetSupportWidgetIdResponse, UpdateSupportWidgetIdRequest, UpdateSupportWidgetIdResponse, CompanyQueue, CompanyWithConfigsResponse, StrongPasswordOptionsResponse, CompanyConfigKey, CompanyConfigResponse, CompanyJsonConfigKey, UpdateCompanyJsonConfigRequest, CompanyBooleanConfigKey, UpdateCompanyBooleanConfigRequest, CompanyStringConfigKey, UpdateCompanyStringConfigRequest, User, ListUsersRequest, ListUsersResponse, WorkGroupListResponse, WorkGroupResponse, UserProfile, WorkGroupMembersResponse, GetAllUsersParams, GetAllUsersResponse, GetManagedUsersResponse, GetUserByIdResponse, UpdateCompanyUserRequest, UpdateUserPasswordRequest, UpdateUserPasswordResponse, UpdateCompanyUserAvatarResponse, GenerateTwoFactorOtpRequest, GenerateTwoFactorOtpResponse, ValidateTwoFactorOtpRequest, ValidateTwoFactorOtpResponse, AnnouncementListFilters, AnnouncementListResponse, Announcement, CreateAnnouncementRequest, UpdateAnnouncementRequest, UpdateAnnouncementStatusRequest, AnnouncementType, ActiveAnnouncementQuery, ActiveAnnouncement } from './customer-service/contracts/index.js';
3
3
  export { AnnouncementAppearance, AnnouncementButton, AnnouncementCompany, AnnouncementPayload, AnnouncementTargetingRuleUrl, AnnouncementTargetingRules, AnnouncementVisualStatus, CompanyData, ListUsersInclude, ListUsersProfile, ListUsersStatus, ListUsersType, ManagedUser, StrongPasswordOptions, UserBond, WorkGroup, WorkGroupMember } from './customer-service/contracts/index.js';
4
- import { ProviderListResponse, Config, GetProviderConfigurationsParams, ProviderConfigurationsResponse, GetProviderDisplayInfoParams, ProviderDisplayInfoResponse, GetConfigsByProviderParams, ConfigListByProviderResponse, Queue, GetMemberQueuesRequest, QueueMember, GetServiceGroupsParams, ServiceGroupsResponse, MetaTemplateConfigResponse, MetaTemplateConfigsResponse, FindOrCreateQueueRuleRequest, QueueRule, GetRootRulesRequest, RootRulesResponse, GetRulesRequest, RulesResponse } from './chat-config/contracts/index.js';
5
- export { ConfigProvider, DistributionType, MetaTemplateButton, Provider, ProviderConfiguration, ProviderName, QueueListResponse, Rule, RuleAction, RuleArchiveStatus, RuleAssociation, RuleAutomaticMessage, ServiceGroup, WhatsAppProviderSettings, WidgetProviderSettings } from './chat-config/contracts/index.js';
4
+ import { ProviderListResponse, Config, GetProviderConfigurationsParams, ProviderConfigurationsResponse, GetProviderDisplayInfoParams, ProviderDisplayInfoResponse, GetConfigsByProviderParams, ConfigListByProviderResponse, Queue, GetMemberQueuesRequest, QueueMember, GetServiceGroupsParams, ServiceGroupsResponse, MetaTemplateConfigResponse, MetaTemplateConfigsResponse, FindOrCreateQueueRuleRequest, QueueRule, GetRuleByIdRequest, RuleResponse, GetRootRulesRequest, RootRulesResponse, GetRulesRequest, RulesResponse, GetRulesCountRequest, RulesCountResponse } from './chat-config/contracts/index.js';
5
+ export { ConfigProvider, DistributionType, MetaTemplateButton, Provider, ProviderConfiguration, ProviderName, QueueListResponse, Rule, RuleAction, RuleArchiveStatus, RuleAssociation, RuleAutomaticMessage, RuleCallOnQueue, RuleFlowSettings, RuleFlowTextResponse, RuleHttpMethod, RuleInteractiveType, RuleQuestionnaire, RuleQuestionnaireBodyField, RuleQuestionnaireHeader, RuleQuestionnaireInteractiveOption, RuleQuestionnaireQuestion, RuleQuestionnaireQuestionType, RuleQuestionnaireValidationAction, RuleQuestionnaireValidationRegexType, RuleSettings, RuleWebhook, RuleWebhookHeader, RuleWebhookResponseMapping, ServiceGroup, WhatsAppProviderSettings, WidgetProviderSettings } from './chat-config/contracts/index.js';
6
6
  import { CampaignQueryParams, CampaignPaginatedResponse, Campaign, CreateCampaignRequest, PatchCampaignRequest, CampaignContactQueryParams, CampaignContactPaginatedResponse, CampaignContactResponse, CreateCampaignContactRequest, PatchCampaignContactRequest, CampaignContactsDashboardQueryParams, CampaignContactsDashboardData, CampaignUser, CampaignWorkGroupQueryParams, CampaignWorkGroupPaginatedResponse, CreateCampaignWorkGroupRequest, CampaignWorkGroup, CampaignCompanyQueryParams, CampaignCompanyPaginatedResponse, CampaignCompanyResponse, EnableCampaignCompanyRequest, CampaignAccessResponse } from './campaigns/contracts/index.js';
7
7
  export { CampaignAccessReason, CampaignContactCampaignStatus, CampaignContactDispatchStatus, CampaignContactFilter, CampaignContactLikeQueryOperators, CampaignContactQueryOperators, CampaignContactQueryValue, CampaignContactSortDirection, CampaignContactSortParams, CampaignContactsDashboardChannelPerformance, CampaignContactsDashboardEvolutionItem, CampaignContactsDashboardExactQueryOperators, CampaignContactsDashboardFunnelItem, CampaignContactsDashboardInterval, CampaignContactsDashboardMetrics, CampaignContactsDashboardQueryValue, CampaignContactsDashboardRangeQueryOperators, CampaignContactsDashboardStatusDistribution, CampaignContactsDashboardStatusMetrics, CampaignContactsDashboardSummary, CampaignContactsDashboardTopCampaign, CampaignNameLikeQueryOperators, CampaignProvider, CampaignRetryConfig, CampaignSchedule, CampaignStatus, WhatsAppPayload, WhatsAppTemplateComponent } from './campaigns/contracts/index.js';
8
8
  import { GetConfigTemplatesParams, GetConfigTemplatesResponse, FlowReadiness, FlowCatalogParams, FlowCatalogResponse, FlowDefinition } from './chat-adapter/contracts/index.js';
@@ -299,6 +299,14 @@ declare class ChatConfigGateway {
299
299
  * @returns The found or created queue rule.
300
300
  */
301
301
  findOrCreateQueueRule(payload: FindOrCreateQueueRuleRequest): Promise<QueueRule>;
302
+ /**
303
+ * Retrieves a rule by its ID (`GET /rules/:id`).
304
+ * Pass `rootOnly: false` to expand the nested `flow` tree recursively.
305
+ * @param ruleId - The unique identifier of the rule.
306
+ * @param params - Optional query parameters (`rootOnly`, `includeFlow`, etc.).
307
+ * @returns The rule, optionally with nested `flow`.
308
+ */
309
+ getRuleById(ruleId: string, params?: GetRuleByIdRequest): Promise<RuleResponse>;
302
310
  /**
303
311
  * @param params - The company and pagination parameters.
304
312
  * @returns The paginated initial service rules.
@@ -310,6 +318,12 @@ declare class ChatConfigGateway {
310
318
  * @returns The paginated rules matching the given filters.
311
319
  */
312
320
  getRules(params: GetRulesRequest): Promise<RulesResponse>;
321
+ /**
322
+ * Counts rules matching the given filters.
323
+ * @param params - Query parameters for filtering rules (same filters as `getRules`, without pagination/associations).
324
+ * @returns The total number of rules matching the filters.
325
+ */
326
+ getRulesCount(params: GetRulesCountRequest): Promise<RulesCountResponse>;
313
327
  }
314
328
 
315
329
  /**
@@ -1009,4 +1023,4 @@ declare const configure: (params: GatewayClientParams) => void;
1009
1023
  */
1010
1024
  declare function gateway<T extends keyof GatewayMap>(service: T): GatewayMap[T];
1011
1025
 
1012
- export { AccessPackage, ActiveAnnouncement, ActiveAnnouncementQuery, Announcement, AnnouncementListFilters, AnnouncementListResponse, AnnouncementType, AttachmentByIdResponse, AudioConvertResponse, AutomationPartner, AutomationPartnerAction, CallEndpoint, CallReportCompanyUsageRequest, CallReportCompanyUsageResponse, Campaign, CampaignAccessResponse, CampaignCompanyPaginatedResponse, CampaignCompanyQueryParams, CampaignCompanyResponse, CampaignContactPaginatedResponse, CampaignContactQueryParams, CampaignContactResponse, CampaignContactsDashboardData, CampaignContactsDashboardQueryParams, CampaignPaginatedResponse, CampaignQueryParams, CampaignUser, CampaignWorkGroup, CampaignWorkGroupPaginatedResponse, CampaignWorkGroupQueryParams, CancelInvitationRequest, CaseFeedByActionItem, CasePermissions, CaseStatus, CaseTimeEntry, ChatWebserviceCompanyUsageRequest, ChatWebserviceCompanyUsageResponse, CloneCaseRequest, ClonedCase, CommentHistoryPage, CompanyAccessPackageItem, CompanyBooleanConfigKey, CompanyConfigKey, CompanyConfigResponse, CompanyJsonConfigKey, CompanyQueue, CompanyResource, CompanyResponse, CompanyStringConfigKey, CompanyWithConfigsResponse, Config, ConfigListByProviderResponse, ContactCategoryResponse, ContactHistoryResponse, ContactPhoneSearchResponse, ContactResponse, CreateAnnouncementRequest, CreateAutomationPartnerRequest, CreateCampaignContactRequest, CreateCampaignRequest, CreateCampaignWorkGroupRequest, CreateCaseStatusRequest, CreateCompanyAccessPackagePayload, CreateIntegrationActionRequest, CreateIntegrationFieldRequest, CreateIntegrationPartnerRequest, CreateTimeEntryRequest, CreateUserPreferenceRequest, CreateWebhookRequest$1 as CreateWebhookRequest, DeleteIntegrationActionParams, DeleteIntegrationFieldParams, DeleteIntegrationPartnerParams, DeleteTimeEntryRequest, DeleteUserDeviceResponse, DeleteUserPreferenceParams, DeleteUserPreferenceResponse, EnableCampaignCompanyRequest, FindContactByIdResponse, FindOrCreateContactRequest, FindOrCreateQueueRuleRequest, FlowCatalogParams, FlowCatalogResponse, FlowDefinition, FlowReadiness, ForwardMessageRequest, GenerateTwoFactorOtpRequest, GenerateTwoFactorOtpResponse, GetAccessPackagesParams, GetAllUsersParams, GetAllUsersResponse, GetAttachmentByIdRequest, GetAutomationPartnerRequest, GetCaseFeedByActionsRequest, GetCommentHistoryRequest, GetCompanyAccessPackagesParams, GetCompanyResourcesParams, GetConfigTemplatesParams, GetConfigTemplatesResponse, GetConfigsByProviderParams, GetContactPhonesParams, GetInitialContextRequest, GetInitialContextResponse, GetIntegrationHooksCatalogRequest, GetIntegrationPartnersByCompanyRequest, GetManagedUsersResponse, GetMemberQueuesRequest, GetMessagesByCursorRequest, GetMessagesByCursorResponse, GetPresignedUrlRequest, GetProviderConfigurationsParams, GetProviderDisplayInfoParams, GetRoomByIdRequest, GetRootRulesRequest, GetRulesRequest, GetServiceGroupsParams, GetSupportWidgetIdResponse, GetSystemNotificationsParams, GetSystemNotificationsResponse, GetUserByIdResponse, GetUserDevicesParams, GetUserDevicesResponse, GetUserPreferencesParams, GetWebhooksByCompanyRequest$1 as GetWebhooksByCompanyRequest, HookCatalogItem, IntegrationAction, IntegrationField, IntegrationPartner, InvitationResponse, ListAutomationActionsRequest, ListAutomationPartnersRequest, ListCaseStatusesRequest, ListCasesRequest, ListCasesResponse, ListContactHistoryRequest, ListInvitationsRequest, ListLiveUserRoomsRequest, ListTimeEntriesPage, ListTimeEntriesRequest, ListUsersRequest, ListUsersResponse, LiveUserRoomResponse, MarkMessagesAsReadRequest, MarkMessagesAsReadResponse, MessageResponse, MetaTemplateConfigResponse, MetaTemplateConfigsResponse, PaginatedResult, PatchCampaignContactRequest, PatchCampaignRequest, ProviderConfigurationsResponse, ProviderDisplayInfoResponse, ProviderListResponse, Queue, QueueMember, QueueRule, RegisterUserDeviceRequest, RegisterUserDeviceResponse, ReplyInvitationRequest, RoomMemberResponse, RoomResponse, RootRulesResponse, RulesResponse, SERVICE_GATEWAYS, SERVICE_GATEWAYS as SERVICE_GATEWAYS_TYPE, SendAttachmentMessageResponse, SendMessageRequest, ServiceGroupsResponse, StrongPasswordOptionsResponse, UpdateAnnouncementRequest, UpdateAnnouncementStatusRequest, UpdateCasePermissionsRequest, UpdateCaseStatusRequest, UpdateCompanyAccessPackagePayload, UpdateCompanyBooleanConfigRequest, UpdateCompanyJsonConfigRequest, UpdateCompanyRequest, UpdateCompanyStringConfigRequest, UpdateCompanyUserAvatarResponse, UpdateCompanyUserRequest, UpdateIntegrationActionParams, UpdateIntegrationFieldParams, UpdateMemberInRoomRequest, UpdateSupportWidgetIdRequest, UpdateSupportWidgetIdResponse, UpdateTimeEntryRequest, UpdateUserPasswordRequest, UpdateUserPasswordResponse, UploadPresignedUrlResponse, User, UserPreference, UserProfile, ValidateTwoFactorOtpRequest, ValidateTwoFactorOtpResponse, WorkGroupListResponse, WorkGroupMembersResponse, WorkGroupResponse, configure, gateway };
1026
+ export { AccessPackage, ActiveAnnouncement, ActiveAnnouncementQuery, Announcement, AnnouncementListFilters, AnnouncementListResponse, AnnouncementType, AttachmentByIdResponse, AudioConvertResponse, AutomationPartner, AutomationPartnerAction, CallEndpoint, CallReportCompanyUsageRequest, CallReportCompanyUsageResponse, Campaign, CampaignAccessResponse, CampaignCompanyPaginatedResponse, CampaignCompanyQueryParams, CampaignCompanyResponse, CampaignContactPaginatedResponse, CampaignContactQueryParams, CampaignContactResponse, CampaignContactsDashboardData, CampaignContactsDashboardQueryParams, CampaignPaginatedResponse, CampaignQueryParams, CampaignUser, CampaignWorkGroup, CampaignWorkGroupPaginatedResponse, CampaignWorkGroupQueryParams, CancelInvitationRequest, CaseFeedByActionItem, CasePermissions, CaseStatus, CaseTimeEntry, ChatWebserviceCompanyUsageRequest, ChatWebserviceCompanyUsageResponse, CloneCaseRequest, ClonedCase, CommentHistoryPage, CompanyAccessPackageItem, CompanyBooleanConfigKey, CompanyConfigKey, CompanyConfigResponse, CompanyJsonConfigKey, CompanyQueue, CompanyResource, CompanyResponse, CompanyStringConfigKey, CompanyWithConfigsResponse, Config, ConfigListByProviderResponse, ContactCategoryResponse, ContactHistoryResponse, ContactPhoneSearchResponse, ContactResponse, CreateAnnouncementRequest, CreateAutomationPartnerRequest, CreateCampaignContactRequest, CreateCampaignRequest, CreateCampaignWorkGroupRequest, CreateCaseStatusRequest, CreateCompanyAccessPackagePayload, CreateIntegrationActionRequest, CreateIntegrationFieldRequest, CreateIntegrationPartnerRequest, CreateTimeEntryRequest, CreateUserPreferenceRequest, CreateWebhookRequest$1 as CreateWebhookRequest, DeleteIntegrationActionParams, DeleteIntegrationFieldParams, DeleteIntegrationPartnerParams, DeleteTimeEntryRequest, DeleteUserDeviceResponse, DeleteUserPreferenceParams, DeleteUserPreferenceResponse, EnableCampaignCompanyRequest, FindContactByIdResponse, FindOrCreateContactRequest, FindOrCreateQueueRuleRequest, FlowCatalogParams, FlowCatalogResponse, FlowDefinition, FlowReadiness, ForwardMessageRequest, GenerateTwoFactorOtpRequest, GenerateTwoFactorOtpResponse, GetAccessPackagesParams, GetAllUsersParams, GetAllUsersResponse, GetAttachmentByIdRequest, GetAutomationPartnerRequest, GetCaseFeedByActionsRequest, GetCommentHistoryRequest, GetCompanyAccessPackagesParams, GetCompanyResourcesParams, GetConfigTemplatesParams, GetConfigTemplatesResponse, GetConfigsByProviderParams, GetContactPhonesParams, GetInitialContextRequest, GetInitialContextResponse, GetIntegrationHooksCatalogRequest, GetIntegrationPartnersByCompanyRequest, GetManagedUsersResponse, GetMemberQueuesRequest, GetMessagesByCursorRequest, GetMessagesByCursorResponse, GetPresignedUrlRequest, GetProviderConfigurationsParams, GetProviderDisplayInfoParams, GetRoomByIdRequest, GetRootRulesRequest, GetRuleByIdRequest, GetRulesCountRequest, GetRulesRequest, GetServiceGroupsParams, GetSupportWidgetIdResponse, GetSystemNotificationsParams, GetSystemNotificationsResponse, GetUserByIdResponse, GetUserDevicesParams, GetUserDevicesResponse, GetUserPreferencesParams, GetWebhooksByCompanyRequest$1 as GetWebhooksByCompanyRequest, HookCatalogItem, IntegrationAction, IntegrationField, IntegrationPartner, InvitationResponse, ListAutomationActionsRequest, ListAutomationPartnersRequest, ListCaseStatusesRequest, ListCasesRequest, ListCasesResponse, ListContactHistoryRequest, ListInvitationsRequest, ListLiveUserRoomsRequest, ListTimeEntriesPage, ListTimeEntriesRequest, ListUsersRequest, ListUsersResponse, LiveUserRoomResponse, MarkMessagesAsReadRequest, MarkMessagesAsReadResponse, MessageResponse, MetaTemplateConfigResponse, MetaTemplateConfigsResponse, PaginatedResult, PatchCampaignContactRequest, PatchCampaignRequest, ProviderConfigurationsResponse, ProviderDisplayInfoResponse, ProviderListResponse, Queue, QueueMember, QueueRule, RegisterUserDeviceRequest, RegisterUserDeviceResponse, ReplyInvitationRequest, RoomMemberResponse, RoomResponse, RootRulesResponse, RuleResponse, RulesCountResponse, RulesResponse, SERVICE_GATEWAYS, SERVICE_GATEWAYS as SERVICE_GATEWAYS_TYPE, SendAttachmentMessageResponse, SendMessageRequest, ServiceGroupsResponse, StrongPasswordOptionsResponse, UpdateAnnouncementRequest, UpdateAnnouncementStatusRequest, UpdateCasePermissionsRequest, UpdateCaseStatusRequest, UpdateCompanyAccessPackagePayload, UpdateCompanyBooleanConfigRequest, UpdateCompanyJsonConfigRequest, UpdateCompanyRequest, UpdateCompanyStringConfigRequest, UpdateCompanyUserAvatarResponse, UpdateCompanyUserRequest, UpdateIntegrationActionParams, UpdateIntegrationFieldParams, UpdateMemberInRoomRequest, UpdateSupportWidgetIdRequest, UpdateSupportWidgetIdResponse, UpdateTimeEntryRequest, UpdateUserPasswordRequest, UpdateUserPasswordResponse, UploadPresignedUrlResponse, User, UserPreference, UserProfile, ValidateTwoFactorOtpRequest, ValidateTwoFactorOtpResponse, WorkGroupListResponse, WorkGroupMembersResponse, WorkGroupResponse, configure, gateway };
package/dist/index.js CHANGED
@@ -509,6 +509,19 @@ var ChatConfigGateway = class {
509
509
  const { data } = await this.httpClient.put(`${this.baseUrl}/rules/queue/find-or-create`, payload);
510
510
  return data;
511
511
  }
512
+ /**
513
+ * Retrieves a rule by its ID (`GET /rules/:id`).
514
+ * Pass `rootOnly: false` to expand the nested `flow` tree recursively.
515
+ * @param ruleId - The unique identifier of the rule.
516
+ * @param params - Optional query parameters (`rootOnly`, `includeFlow`, etc.).
517
+ * @returns The rule, optionally with nested `flow`.
518
+ */
519
+ async getRuleById(ruleId, params) {
520
+ const { data } = await this.httpClient.get(`${this.baseUrl}/rules/${ruleId}`, {
521
+ params
522
+ });
523
+ return data;
524
+ }
512
525
  /**
513
526
  * @param params - The company and pagination parameters.
514
527
  * @returns The paginated initial service rules.
@@ -537,6 +550,17 @@ var ChatConfigGateway = class {
537
550
  });
538
551
  return data;
539
552
  }
553
+ /**
554
+ * Counts rules matching the given filters.
555
+ * @param params - Query parameters for filtering rules (same filters as `getRules`, without pagination/associations).
556
+ * @returns The total number of rules matching the filters.
557
+ */
558
+ async getRulesCount(params) {
559
+ const { data } = await this.httpClient.get(`${this.baseUrl}/rules/count`, {
560
+ params
561
+ });
562
+ return data;
563
+ }
540
564
  };
541
565
 
542
566
  // src/campaigns/index.ts