@botpress/webchat 1.1.1 → 1.3.0

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.
Files changed (99) hide show
  1. package/dist/client/MessagingClient/client.d.ts +8 -19
  2. package/dist/client/{ChatClient → PushpinClient}/index.d.ts +7 -5
  3. package/dist/client/PushpinClient/inner-client/event-emitter.d.ts +10 -0
  4. package/dist/client/PushpinClient/inner-client/eventsource.d.ts +22 -0
  5. package/dist/client/PushpinClient/inner-client/index.d.ts +41 -0
  6. package/dist/client/PushpinClient/inner-client/signal-listener.d.ts +47 -0
  7. package/dist/client/{ChatClient → PushpinClient}/state-machine.d.ts +13 -13
  8. package/dist/client/index.d.ts +1 -1
  9. package/dist/client/types.d.ts +8 -2
  10. package/dist/components/Avatar.d.ts +2 -3
  11. package/dist/components/Block.d.ts +3 -2
  12. package/dist/components/CloseWindow.d.ts +5 -0
  13. package/dist/components/Composer.d.ts +2 -2
  14. package/dist/components/Header.d.ts +1 -1
  15. package/dist/components/LoadingIndicator.d.ts +1 -1
  16. package/dist/components/MessageList.d.ts +1 -1
  17. package/dist/components/Modal.d.ts +2 -2
  18. package/dist/components/RestartConversation.d.ts +1 -1
  19. package/dist/components/Webchat.d.ts +1 -1
  20. package/dist/components/renderers/Audio.d.ts +1 -1
  21. package/dist/components/renderers/Button.d.ts +1 -1
  22. package/dist/components/renderers/Carousel.d.ts +1 -1
  23. package/dist/components/renderers/Dropdown.d.ts +1 -1
  24. package/dist/components/renderers/File.d.ts +1 -1
  25. package/dist/components/renderers/Image.d.ts +1 -1
  26. package/dist/components/renderers/Location.d.ts +1 -1
  27. package/dist/components/renderers/Text.d.ts +1 -1
  28. package/dist/components/renderers/Video.d.ts +1 -1
  29. package/dist/contexts/WebchatContext.d.ts +6 -6
  30. package/dist/gen/client/api.d.ts +2012 -0
  31. package/dist/gen/client/base.d.ts +54 -0
  32. package/dist/gen/client/client.d.ts +61 -0
  33. package/dist/gen/client/common.d.ts +65 -0
  34. package/dist/gen/client/configuration.d.ts +83 -0
  35. package/dist/gen/client/errors.d.ts +204 -0
  36. package/dist/gen/client/index.d.ts +13 -0
  37. package/dist/gen/models/conversation.j.d.ts +20 -0
  38. package/dist/gen/models/conversation.t.d.ts +10 -0
  39. package/dist/gen/models/conversation.z.d.ts +15 -0
  40. package/dist/gen/models/index.d.ts +1014 -0
  41. package/dist/gen/models/message.j.d.ts +490 -0
  42. package/dist/gen/models/message.t.d.ts +122 -0
  43. package/dist/gen/models/message.z.d.ts +439 -0
  44. package/dist/gen/models/user.j.d.ts +26 -0
  45. package/dist/gen/models/user.t.d.ts +12 -0
  46. package/dist/gen/models/user.z.d.ts +21 -0
  47. package/dist/gen/signals/customSignal.j.d.ts +24 -0
  48. package/dist/gen/signals/customSignal.t.d.ts +13 -0
  49. package/dist/gen/signals/customSignal.z.d.ts +22 -0
  50. package/dist/gen/signals/index.d.ts +1249 -0
  51. package/dist/gen/signals/messageCreatedSignal.j.d.ts +501 -0
  52. package/dist/gen/signals/messageCreatedSignal.t.d.ts +125 -0
  53. package/dist/gen/signals/messageCreatedSignal.z.d.ts +608 -0
  54. package/dist/gen/signals/webchatConfigSignal.j.d.ts +24 -0
  55. package/dist/gen/signals/webchatConfigSignal.t.d.ts +13 -0
  56. package/dist/gen/signals/webchatConfigSignal.z.d.ts +22 -0
  57. package/dist/gen/signals/webchatVisibilitySignal.j.d.ts +24 -0
  58. package/dist/gen/signals/webchatVisibilitySignal.t.d.ts +11 -0
  59. package/dist/gen/signals/webchatVisibilitySignal.z.d.ts +22 -0
  60. package/dist/get-client.d.ts +8 -0
  61. package/dist/hooks/useClient.d.ts +3 -3
  62. package/dist/hooks/useWebchatStore.d.ts +3 -0
  63. package/dist/index.d.ts +3 -4
  64. package/dist/index.js +31976 -85703
  65. package/dist/index.umd.cjs +117 -187
  66. package/dist/providers/ModalProvider.d.ts +1 -1
  67. package/dist/providers/WebchatProvider.d.ts +6 -5
  68. package/dist/schemas/configuration.d.ts +117 -0
  69. package/dist/schemas/index.d.ts +2 -0
  70. package/dist/schemas/init.d.ts +3844 -0
  71. package/dist/schemas/theme.d.ts +231 -232
  72. package/dist/types/block-type.d.ts +3 -6
  73. package/dist/types/configuration.d.ts +4 -16
  74. package/dist/types/index.d.ts +2 -0
  75. package/dist/types/init.d.ts +6 -0
  76. package/dist/types/theme.d.ts +7 -0
  77. package/dist/utils/index.d.ts +0 -2
  78. package/openapi/index.ts +31 -0
  79. package/openapi/package.json +5 -0
  80. package/openapi/readme.md +1 -0
  81. package/package.json +18 -38
  82. package/dist/App.d.ts +0 -11
  83. package/dist/client/MessagingClient/adapters/Trigger.d.ts +0 -33
  84. package/dist/components/dev-tools/DevTools.d.ts +0 -1
  85. package/dist/components/dev-tools/configuration.d.ts +0 -2
  86. package/dist/components/dev-tools/helpers.d.ts +0 -5
  87. package/dist/main.d.ts +0 -0
  88. package/dist/options.d.ts +0 -11
  89. package/dist/themes/base.d.ts +0 -3
  90. package/dist/themes/baseColors.d.ts +0 -736
  91. package/dist/themes/dawn.d.ts +0 -4
  92. package/dist/themes/eggplant.d.ts +0 -4
  93. package/dist/themes/index.d.ts +0 -3
  94. package/dist/themes/prism.d.ts +0 -4
  95. package/dist/themes/themeBuilder.d.ts +0 -27
  96. package/dist/twind.config.d.ts +0 -9
  97. package/dist/twind.d.ts +0 -16
  98. package/dist/utils/mergeThemes.d.ts +0 -2
  99. package/dist/utils/withBaseTheme.d.ts +0 -384
@@ -1,20 +1,8 @@
1
1
  import { type MessagingSocketOptions, type UserCredentials } from '@botpress/messaging-socket';
2
2
  import { EventEmitter } from '../../utils';
3
- import { Message, WebChatClient } from '../types';
4
- import { TriggerSchema } from './adapters/Trigger';
5
- import { z } from 'zod';
6
- type Events = {
7
- connect: UserCredentials;
8
- disconnect: undefined;
9
- user: string | undefined;
10
- conversation: string | undefined;
11
- message: Message;
12
- messageSent: string;
13
- startTyping: undefined;
14
- stopTyping: undefined;
15
- trigger: z.infer<typeof TriggerSchema>['trigger'];
16
- };
17
- export declare class MessagingClient implements WebChatClient {
3
+ import { Events, UserData, WebchatClient } from '../types';
4
+ export type MessagingClientProps = MessagingSocketOptions;
5
+ export declare class MessagingClient implements WebchatClient {
18
6
  private socket;
19
7
  clientId: string | undefined;
20
8
  userId: string | undefined;
@@ -23,19 +11,20 @@ export declare class MessagingClient implements WebChatClient {
23
11
  private connected;
24
12
  private readonly emitter;
25
13
  on: EventEmitter<Events>['on'];
26
- constructor(options: MessagingSocketOptions);
27
- connect(creds?: UserCredentials): Promise<UserCredentials | undefined>;
14
+ constructor(options: MessagingClientProps);
15
+ readonly mode = "messaging";
16
+ connect(creds?: UserCredentials, data?: UserData): Promise<UserCredentials | undefined>;
28
17
  disconnect(): Promise<void>;
29
18
  sendMessage(message: string): Promise<void>;
19
+ sendEvent(event: Record<string, any>): Promise<void>;
30
20
  switchConversation(id: string): Promise<void>;
31
21
  conversationExists(id: string): Promise<boolean>;
32
22
  newConversation(): Promise<void>;
33
23
  listMessages(limit?: number): Promise<{
34
- payload: import("message-adapters/src/target").Message;
24
+ payload: import("webchat-adapters/src/target").Message;
35
25
  id: string;
36
26
  conversationId: string;
37
27
  authorId: string | undefined;
38
28
  sentOn: Date;
39
29
  }[]>;
40
30
  }
41
- export {};
@@ -1,22 +1,24 @@
1
1
  import { EventEmitter } from '../../utils';
2
- import { Events, Message, UserCredentials, WebChatClient } from '../types';
3
- export type ChatClientProps = {
2
+ import { Events, Message, UserCredentials, UserData, WebchatClient } from '../types';
3
+ export type PushpinClientProps = {
4
4
  apiUrl: string;
5
5
  clientId: string;
6
6
  };
7
- export declare class ChatClient extends EventEmitter<Events> implements WebChatClient {
7
+ export declare class PushpinClient extends EventEmitter<Events> implements WebchatClient {
8
8
  private _client;
9
9
  private _webhookId;
10
10
  private _state;
11
- constructor(props: ChatClientProps);
11
+ constructor(props: PushpinClientProps);
12
+ readonly mode = "pushpin";
12
13
  get clientId(): string;
13
14
  get userId(): string | undefined;
14
15
  get conversationId(): string | undefined;
15
- connect(creds?: UserCredentials): Promise<UserCredentials | undefined>;
16
+ connect(creds?: UserCredentials, data?: UserData): Promise<UserCredentials | undefined>;
16
17
  private _initialConnect;
17
18
  private _reConnect;
18
19
  disconnect(): Promise<void>;
19
20
  sendMessage(message: string): Promise<void>;
21
+ sendEvent(event: Record<string, any>): Promise<void>;
20
22
  switchConversation(id: string): Promise<void>;
21
23
  conversationExists(id: string): Promise<boolean>;
22
24
  userExists({ userToken }: UserCredentials): Promise<boolean>;
@@ -0,0 +1,10 @@
1
+ export type ListenStatus = 'keep-listening' | 'stop-listening';
2
+ export declare class EventEmitter<E extends object> {
3
+ private listeners;
4
+ emit<K extends keyof E>(type: K, event: E[K]): void;
5
+ onceOrMore<K extends keyof E>(type: K, listener: (event: E[K]) => ListenStatus): void;
6
+ once<K extends keyof E>(type: K, listener: (event: E[K]) => void): void;
7
+ on<K extends keyof E>(type: K, listener: (event: E[K]) => void): void;
8
+ off<K extends keyof E>(type: K, listener: (event: E[K]) => void): void;
9
+ cleanup(): void;
10
+ }
@@ -0,0 +1,22 @@
1
+ import EventSource from 'event-source-polyfill';
2
+ import { EventEmitter } from './event-emitter';
3
+ type OnOpen = NonNullable<EventSource.EventSourcePolyfill['onopen']>;
4
+ type OnMessage = NonNullable<EventSource.EventSourcePolyfill['onmessage']>;
5
+ type OnError = NonNullable<EventSource.EventSourcePolyfill['onerror']>;
6
+ export type OpenEvent = Parameters<OnOpen>[0];
7
+ export type MessageEvent = Parameters<OnMessage>[0];
8
+ export type ErrorEvent = Parameters<OnError>[0];
9
+ export type Events = {
10
+ open: OpenEvent;
11
+ message: MessageEvent;
12
+ error: ErrorEvent;
13
+ };
14
+ export type Props = {
15
+ headers?: Record<string, string>;
16
+ };
17
+ export type EvSource = {
18
+ on: EventEmitter<Events>['on'];
19
+ close: () => void;
20
+ };
21
+ export declare const listenEventSource: (url: string, props?: Props) => Promise<EvSource>;
22
+ export {};
@@ -0,0 +1,41 @@
1
+ import { ApiClient as AutoGeneratedClient } from '../../../gen/client/client';
2
+ import { SignalListener } from './signal-listener';
3
+ export type { Message, Conversation, User } from '../../../gen/client';
4
+ export * from '../../../gen/client/errors';
5
+ export type Headers = Record<string, string>;
6
+ export type ClientProps = {
7
+ apiUrl: string;
8
+ timeout?: number;
9
+ headers?: Headers;
10
+ };
11
+ type IOf<T extends object> = {
12
+ [K in keyof T]: T[K];
13
+ };
14
+ type IAutoClient = IOf<AutoGeneratedClient>;
15
+ type IClient = Omit<IAutoClient, 'listenConversation'>;
16
+ type ListenConversationOperation = IAutoClient['listenConversation'];
17
+ type ListenConversationArgs = Parameters<ListenConversationOperation>[0];
18
+ export declare class Client implements IClient {
19
+ readonly props: Readonly<ClientProps>;
20
+ private _auto;
21
+ constructor(props: Readonly<ClientProps>);
22
+ readonly createConversation: IAutoClient['createConversation'];
23
+ readonly getConversation: IAutoClient['getConversation'];
24
+ readonly deleteConversation: IAutoClient['deleteConversation'];
25
+ readonly listConversations: IAutoClient['listConversations'];
26
+ readonly listConversationMessages: IAutoClient['listConversationMessages'];
27
+ readonly addParticipant: IAutoClient['addParticipant'];
28
+ readonly removeParticipant: IAutoClient['removeParticipant'];
29
+ readonly getParticipant: IAutoClient['getParticipant'];
30
+ readonly listParticipants: IAutoClient['listParticipants'];
31
+ readonly createMessage: IAutoClient['createMessage'];
32
+ readonly getMessage: IAutoClient['getMessage'];
33
+ readonly deleteMessage: IAutoClient['deleteMessage'];
34
+ readonly createUser: IAutoClient['createUser'];
35
+ readonly getUser: IAutoClient['getUser'];
36
+ readonly updateUser: IAutoClient['updateUser'];
37
+ readonly deleteUser: IAutoClient['deleteUser'];
38
+ readonly createEvent: IAutoClient['createEvent'];
39
+ readonly getEvent: IAutoClient['getEvent'];
40
+ readonly listenConversation: ({ id, xUserKey }: ListenConversationArgs) => Promise<SignalListener>;
41
+ }
@@ -0,0 +1,47 @@
1
+ import { EventEmitter } from './event-emitter';
2
+ import { EvSource } from './eventsource';
3
+ import { Types } from '../../../gen/signals';
4
+ type Signals = Types & {
5
+ unknown: {
6
+ type: 'unknown';
7
+ data: unknown;
8
+ };
9
+ };
10
+ type SignalMap = {
11
+ [K in keyof Signals as Signals[K]['type']]: Signals[K]['data'];
12
+ };
13
+ type Events = SignalMap & {
14
+ error: Error;
15
+ };
16
+ type SignalListenerState = {
17
+ status: 'disconnected';
18
+ } | {
19
+ status: 'connecting';
20
+ connectionPromise: Promise<EvSource>;
21
+ } | {
22
+ status: 'connected';
23
+ source: EvSource;
24
+ };
25
+ export type SignalListenerStatus = SignalListenerState['status'];
26
+ export type SignalListenerProps = {
27
+ url: string;
28
+ userKey: string;
29
+ conversationId: string;
30
+ };
31
+ export declare class SignalListener extends EventEmitter<Events> {
32
+ private _props;
33
+ private _state;
34
+ constructor(_props: SignalListenerProps);
35
+ static listen: (props: SignalListenerProps) => Promise<SignalListener>;
36
+ get status(): SignalListenerStatus;
37
+ readonly connect: () => Promise<void>;
38
+ readonly disconnect: () => Promise<void>;
39
+ private _connect;
40
+ private _disconnectSync;
41
+ private _handleMessage;
42
+ private _handleError;
43
+ private _parseSignal;
44
+ private _safeJsonParse;
45
+ private _toError;
46
+ }
47
+ export {};
@@ -1,4 +1,4 @@
1
- import { Client } from '@botpress/chat';
1
+ import { Client } from './inner-client';
2
2
  export type SignalEmitter = Awaited<ReturnType<Client['listenConversation']>>;
3
3
  export type DisconnectedState = {};
4
4
  export type UserCreatingState = DisconnectedState & {};
@@ -11,7 +11,7 @@ export type ConversationCreatedState = ConversationCreatingState & {
11
11
  conversationId: string;
12
12
  signalEmitter: SignalEmitter;
13
13
  };
14
- export type ChatClientState = (DisconnectedState & {
14
+ export type PushpinClientState = (DisconnectedState & {
15
15
  status: 'disconnected';
16
16
  }) | (UserCreatingState & {
17
17
  status: 'user_creating';
@@ -22,19 +22,19 @@ export type ChatClientState = (DisconnectedState & {
22
22
  }) | (ConversationCreatedState & {
23
23
  status: 'conversation_created';
24
24
  });
25
- export type ChatClientStatus = ChatClientState['status'];
26
- export type StateOf<S extends ChatClientStatus> = Extract<ChatClientState, {
25
+ export type PushpinClientStatus = PushpinClientState['status'];
26
+ export type StateOf<S extends PushpinClientStatus> = Extract<PushpinClientState, {
27
27
  status: S;
28
28
  }>;
29
- type GT<S extends ChatClientStatus> = S extends 'disconnected' ? 'user_creating' | 'user_created' | 'conversation_creating' | 'conversation_created' : S extends 'user_creating' ? 'user_created' | 'conversation_creating' | 'conversation_created' : S extends 'user_created' ? 'conversation_creating' | 'conversation_created' : S extends 'conversation_creating' ? 'conversation_created' : never;
30
- type LT<S extends ChatClientStatus> = S extends 'conversation_created' ? 'conversation_creating' | 'user_created' | 'user_creating' | 'disconnected' : S extends 'conversation_creating' ? 'user_created' | 'user_creating' | 'disconnected' : S extends 'user_created' ? 'user_creating' | 'disconnected' : S extends 'user_creating' ? 'disconnected' : never;
31
- export declare const isEq: <S extends "disconnected" | "user_creating" | "user_created" | "conversation_creating" | "conversation_created">(s: ChatClientState, target: S) => s is StateOf<S>;
32
- export declare const isGt: <S extends "disconnected" | "user_creating" | "user_created" | "conversation_creating" | "conversation_created">(s: ChatClientState, target: S) => s is StateOf<GT<S>>;
33
- export declare const isLt: <S extends "disconnected" | "user_creating" | "user_created" | "conversation_creating" | "conversation_created">(s: ChatClientState, target: S) => s is StateOf<LT<S>>;
34
- export declare const isGte: <S extends "disconnected" | "user_creating" | "user_created" | "conversation_creating" | "conversation_created">(s: ChatClientState, target: S) => s is StateOf<S | GT<S>>;
35
- export declare const isLte: <S extends "disconnected" | "user_creating" | "user_created" | "conversation_creating" | "conversation_created">(s: ChatClientState, target: S) => s is StateOf<S | LT<S>>;
29
+ type GT<S extends PushpinClientStatus> = S extends 'disconnected' ? 'user_creating' | 'user_created' | 'conversation_creating' | 'conversation_created' : S extends 'user_creating' ? 'user_created' | 'conversation_creating' | 'conversation_created' : S extends 'user_created' ? 'conversation_creating' | 'conversation_created' : S extends 'conversation_creating' ? 'conversation_created' : never;
30
+ type LT<S extends PushpinClientStatus> = S extends 'conversation_created' ? 'conversation_creating' | 'user_created' | 'user_creating' | 'disconnected' : S extends 'conversation_creating' ? 'user_created' | 'user_creating' | 'disconnected' : S extends 'user_created' ? 'user_creating' | 'disconnected' : S extends 'user_creating' ? 'disconnected' : never;
31
+ export declare const isEq: <S extends "disconnected" | "user_creating" | "user_created" | "conversation_creating" | "conversation_created">(s: PushpinClientState, target: S) => s is StateOf<S>;
32
+ export declare const isGt: <S extends "disconnected" | "user_creating" | "user_created" | "conversation_creating" | "conversation_created">(s: PushpinClientState, target: S) => s is StateOf<GT<S>>;
33
+ export declare const isLt: <S extends "disconnected" | "user_creating" | "user_created" | "conversation_creating" | "conversation_created">(s: PushpinClientState, target: S) => s is StateOf<LT<S>>;
34
+ export declare const isGte: <S extends "disconnected" | "user_creating" | "user_created" | "conversation_creating" | "conversation_created">(s: PushpinClientState, target: S) => s is StateOf<S | GT<S>>;
35
+ export declare const isLte: <S extends "disconnected" | "user_creating" | "user_created" | "conversation_creating" | "conversation_created">(s: PushpinClientState, target: S) => s is StateOf<S | LT<S>>;
36
36
  export declare class InvalidStateError extends Error {
37
- readonly state: ChatClientState;
38
- constructor(state: ChatClientState);
37
+ readonly state: PushpinClientState;
38
+ constructor(state: PushpinClientState);
39
39
  }
40
40
  export {};
@@ -1,3 +1,3 @@
1
1
  export * from './MessagingClient';
2
- export * from './ChatClient';
2
+ export * from './PushpinClient';
3
3
  export * from './types';
@@ -4,6 +4,7 @@ export type UserCredentials = {
4
4
  userId: string;
5
5
  userToken: string;
6
6
  };
7
+ export type UserData = Record<string, string>;
7
8
  export type Message = {
8
9
  id: string;
9
10
  conversationId: string;
@@ -16,15 +17,20 @@ export type Events = {
16
17
  message: Message;
17
18
  messageSent: string;
18
19
  error: Error;
20
+ webchatVisibility: 'show' | 'hide' | 'toggle';
21
+ webchatConfig: Record<string, any>;
22
+ customEvent: Record<string, any>;
19
23
  };
20
- export type WebChatClient = {
24
+ export type WebchatClient = {
25
+ mode: 'messaging' | 'pushpin';
21
26
  clientId: string | undefined;
22
27
  userId: string | undefined;
23
28
  conversationId: string | undefined;
24
29
  on: EventEmitter<Events>['on'];
25
- connect(creds?: UserCredentials): Promise<UserCredentials | undefined>;
30
+ connect(creds?: UserCredentials, data?: UserData): Promise<UserCredentials | undefined>;
26
31
  disconnect(): Promise<void>;
27
32
  sendMessage(message: string): Promise<void>;
33
+ sendEvent(event: Record<string, any>): Promise<void>;
28
34
  switchConversation(id: string): Promise<void>;
29
35
  conversationExists(id: string): Promise<boolean>;
30
36
  newConversation(): Promise<void>;
@@ -1,9 +1,8 @@
1
+ import { AvatarTheme } from '../types';
1
2
  import { ComponentPropsWithRef } from 'react';
2
- import { z } from 'zod';
3
- import * as Themes from '../schemas';
4
3
  type AvatarProps = {
5
4
  userId?: string;
6
5
  src?: string;
7
- } & Omit<ComponentPropsWithRef<'span'>, 'className' | 'style'> & z.infer<typeof Themes.AvatarSchema>;
6
+ } & Omit<ComponentPropsWithRef<'span'>, 'className' | 'style'> & AvatarTheme;
8
7
  export declare const Avatar: import("react").ForwardRefExoticComponent<Omit<AvatarProps, "ref"> & import("react").RefAttributes<HTMLSpanElement>>;
9
8
  export {};
@@ -1,4 +1,5 @@
1
- import { BlockMap, CommonBlockProps } from '../types';
2
- export declare const Block: <T extends "audio" | "carousel" | "text" | "dropdown" | "file" | "image" | "location" | "video" | "button" | "bubble" | "column" | "row">({ block, styles, ...props }: {
1
+ /// <reference types="react" />
2
+ import { BlockMap, BlockTypes, CommonBlockProps } from '../types';
3
+ export declare const Block: <T extends BlockTypes>({ block, styles, ...props }: {
3
4
  block: BlockMap[T];
4
5
  } & CommonBlockProps) => JSX.Element;
@@ -0,0 +1,5 @@
1
+ import { ComponentProps } from 'react';
2
+ import { XMarkIcon } from '@heroicons/react/24/outline';
3
+ type Props = ComponentProps<typeof XMarkIcon>;
4
+ export declare const CloseWindow: ({ ...props }: Props) => import("react/jsx-runtime").JSX.Element;
5
+ export {};
@@ -1,8 +1,8 @@
1
+ import { Theme } from '../types';
1
2
  import { ComponentProps, FC } from 'react';
2
3
  import { type StyleOptions } from '../contexts';
3
- import { Theme } from '../schemas';
4
4
  declare const Composer: import("react").MemoExoticComponent<import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>>;
5
- declare const ComposerInput: import("react").MemoExoticComponent<({ ...props }: ComponentProps<'textarea'>) => JSX.Element>;
5
+ declare const ComposerInput: import("react").MemoExoticComponent<({ ...props }: ComponentProps<'textarea'>) => import("react/jsx-runtime").JSX.Element>;
6
6
  type ComposerButtonStyle = NonNullable<Theme['composer']>['button'];
7
7
  type ComposerButtonProps = {
8
8
  icon?: FC<StyleOptions>;
@@ -31,6 +31,6 @@ declare const HeaderNamespace: import("react").NamedExoticComponent<Omit<HeaderP
31
31
  Description: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLParagraphElement>, HTMLParagraphElement>, "ref"> & import("react").RefAttributes<HTMLParagraphElement>>;
32
32
  Title: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLHeadingElement>, HTMLHeadingElement>, "ref"> & import("react").RefAttributes<HTMLHeadingElement>>;
33
33
  Actions: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
34
- DescriptionItem: ({ icon, title, link, ...props }: DescriptionItemProps) => JSX.Element | null;
34
+ DescriptionItem: ({ icon, title, link, ...props }: DescriptionItemProps) => import("react/jsx-runtime").JSX.Element | null;
35
35
  };
36
36
  export { HeaderNamespace as Header };
@@ -1,2 +1,2 @@
1
1
  import { ComponentProps } from 'react';
2
- export declare const LoadingIndicator: import("react").MemoExoticComponent<({ ...props }: ComponentProps<'div'>) => JSX.Element>;
2
+ export declare const LoadingIndicator: import("react").MemoExoticComponent<({ ...props }: ComponentProps<'div'>) => import("react/jsx-runtime").JSX.Element>;
@@ -6,5 +6,5 @@ type MessageListProps = {
6
6
  icon?: FC<StyleOptions>;
7
7
  };
8
8
  };
9
- export declare const MessageList: import("react").MemoExoticComponent<({ scrollDownButton, ...props }: ComponentProps<'ul'> & MessageListProps) => JSX.Element>;
9
+ export declare const MessageList: import("react").MemoExoticComponent<({ scrollDownButton, ...props }: ComponentProps<'ul'> & MessageListProps) => import("react/jsx-runtime").JSX.Element>;
10
10
  export {};
@@ -4,7 +4,7 @@ export declare function Modal({ open, onOpenChange, children, }: {
4
4
  open?: boolean;
5
5
  onOpenChange?: (open: boolean) => void;
6
6
  children: ReactNode;
7
- }): JSX.Element;
7
+ }): import("react/jsx-runtime").JSX.Element;
8
8
  export declare namespace Modal {
9
9
  var Button: import("react").ForwardRefExoticComponent<Dialog.DialogTriggerProps & import("react").RefAttributes<HTMLButtonElement>>;
10
10
  var Close: import("react").ForwardRefExoticComponent<Dialog.DialogCloseProps & import("react").RefAttributes<HTMLButtonElement>>;
@@ -13,5 +13,5 @@ export declare namespace Modal {
13
13
  declare function ModalContent({ title, children }: {
14
14
  title: string;
15
15
  children: ReactNode;
16
- }): JSX.Element;
16
+ }): import("react/jsx-runtime").JSX.Element;
17
17
  export {};
@@ -1,5 +1,5 @@
1
1
  import { ArrowPathIcon } from '@heroicons/react/20/solid';
2
2
  import { ComponentProps } from 'react';
3
3
  type Props = {} & ComponentProps<typeof ArrowPathIcon>;
4
- export declare const RestartConversation: ({ ...props }: Props) => JSX.Element;
4
+ export declare const RestartConversation: ({ ...props }: Props) => import("react/jsx-runtime").JSX.Element;
5
5
  export {};
@@ -1 +1 @@
1
- export declare const Webchat: () => JSX.Element;
1
+ export declare const Webchat: () => import("react/jsx-runtime").JSX.Element;
@@ -1,3 +1,3 @@
1
1
  /// <reference types="react" />
2
2
  import { CommonBlockProps } from '../../types';
3
- export declare const Audio: import("react").ForwardRefExoticComponent<CommonBlockProps & import("message-adapters/src/target").AudioMessage & import("react").RefAttributes<HTMLAudioElement>>;
3
+ export declare const Audio: import("react").ForwardRefExoticComponent<CommonBlockProps & import("webchat-adapters/src/target").AudioMessage & import("react").RefAttributes<HTMLAudioElement>>;
@@ -1,4 +1,4 @@
1
1
  import { ButtonBlock, CommonBlockProps } from '../../types';
2
2
  type Props = CommonBlockProps & ButtonBlock;
3
- export declare const Button: ({ text, buttonValue, type, styles, variant, groupId, reusable, ...props }: Props) => JSX.Element;
3
+ export declare const Button: ({ text, buttonValue, type, styles, variant, groupId, reusable, ...props }: Props) => import("react/jsx-runtime").JSX.Element;
4
4
  export {};
@@ -1,3 +1,3 @@
1
1
  /// <reference types="react" />
2
2
  import { CommonBlockProps } from '../../types';
3
- export declare const Carousel: import("react").ForwardRefExoticComponent<CommonBlockProps & import("message-adapters/src/target").CarouselMessage & import("react").RefAttributes<HTMLDivElement>>;
3
+ export declare const Carousel: import("react").ForwardRefExoticComponent<CommonBlockProps & import("webchat-adapters/src/target").CarouselMessage & import("react").RefAttributes<HTMLDivElement>>;
@@ -1,5 +1,5 @@
1
1
  import { CommonBlockProps, DropdownBlock } from '../../types';
2
2
  import { ComponentProps } from 'react';
3
3
  type Props = CommonBlockProps & DropdownBlock & ComponentProps<'div'>;
4
- export declare const Dropdown: ({ styles, type, options, label, reusable }: Props) => JSX.Element;
4
+ export declare const Dropdown: ({ styles, type, options, label, reusable }: Props) => import("react/jsx-runtime").JSX.Element;
5
5
  export {};
@@ -1,3 +1,3 @@
1
1
  /// <reference types="react" />
2
2
  import { CommonBlockProps } from '../../types';
3
- export declare const File: import("react").ForwardRefExoticComponent<CommonBlockProps & import("message-adapters/src/target").FileMessage & import("react").RefAttributes<HTMLAnchorElement>>;
3
+ export declare const File: import("react").ForwardRefExoticComponent<CommonBlockProps & import("webchat-adapters/src/target").FileMessage & import("react").RefAttributes<HTMLAnchorElement>>;
@@ -1,3 +1,3 @@
1
1
  /// <reference types="react" />
2
2
  import { CommonBlockProps } from '../../types';
3
- export declare const Image: import("react").ForwardRefExoticComponent<CommonBlockProps & import("message-adapters/src/target").ImageMessage & import("react").RefAttributes<HTMLImageElement>>;
3
+ export declare const Image: import("react").ForwardRefExoticComponent<CommonBlockProps & import("webchat-adapters/src/target").ImageMessage & import("react").RefAttributes<HTMLImageElement>>;
@@ -1,3 +1,3 @@
1
1
  /// <reference types="react" />
2
2
  import { CommonBlockProps } from '../../types';
3
- export declare const Location: import("react").ForwardRefExoticComponent<CommonBlockProps & import("message-adapters/src/target").LocationMessage & import("react").RefAttributes<HTMLAnchorElement>>;
3
+ export declare const Location: import("react").ForwardRefExoticComponent<CommonBlockProps & import("webchat-adapters/src/target").LocationMessage & import("react").RefAttributes<HTMLAnchorElement>>;
@@ -1,4 +1,4 @@
1
1
  import { CommonBlockProps, TextBlock } from '../../types';
2
2
  type Props = CommonBlockProps & TextBlock;
3
- export declare const Text: ({ text, type, styles }: Props) => JSX.Element;
3
+ export declare const Text: ({ text, type, styles }: Props) => import("react/jsx-runtime").JSX.Element;
4
4
  export {};
@@ -1,3 +1,3 @@
1
1
  /// <reference types="react" />
2
2
  import { CommonBlockProps } from '../../types';
3
- export declare const Video: import("react").ForwardRefExoticComponent<CommonBlockProps & import("message-adapters/src/target").VideoMessage & import("react").RefAttributes<HTMLVideoElement>>;
3
+ export declare const Video: import("react").ForwardRefExoticComponent<CommonBlockProps & import("webchat-adapters/src/target").VideoMessage & import("react").RefAttributes<HTMLVideoElement>>;
@@ -1,8 +1,7 @@
1
1
  import { CSSProperties, FC, ReactNode } from 'react';
2
- import type { BlockObject, BlockStyles, Configuration, MessageObject } from '../types';
2
+ import { Theme, Configuration, BlockObject, BlockStyles, MessageObject } from '../types';
3
3
  import { EventEmitter, Events } from '../utils';
4
- import { Theme } from '../schemas';
5
- import { type WebChatClient } from '../client';
4
+ import { WebchatClient } from '../client';
6
5
  export type StyleOptions = {
7
6
  className?: string;
8
7
  style?: CSSProperties;
@@ -35,10 +34,11 @@ export type ContextVaue = {
35
34
  isReadOnly?: boolean;
36
35
  };
37
36
  client?: {
38
- on: WebChatClient['on'];
39
- sendMessage: WebChatClient['sendMessage'];
37
+ on: WebchatClient['on'];
38
+ sendMessage: WebchatClient['sendMessage'];
40
39
  restartConversation: () => void;
41
- } & Pick<WebChatClient, 'userId' | 'conversationId' | 'clientId'>;
40
+ } & Pick<WebchatClient, 'userId' | 'conversationId' | 'clientId'>;
41
+ closeWindow?: () => void;
42
42
  setState: (state: Partial<ContextVaue['state']>) => void;
43
43
  setTheme: (styles: Partial<Theme>) => void;
44
44
  };