@yext/chat-headless
Version:
A state manager library powered by Redux for Yext Chat integrations
31 lines (28 loc) • 930 B
text/typescript
import { InternalConfig, provideChatCoreInternal } from "@yext/chat-core";
import { ChatClient, ChatHeadless } from "./models";
import { ChatHeadlessImpl } from "./ChatHeadlessImpl";
import { HeadlessConfig } from "./models";
/**
* Provide an instance of {@link ChatHeadless} with all functionality built in.
*
* @public
*/
export function provideChatHeadless(
config: HeadlessConfig,
clients?: { bot?: ChatClient; agent?: ChatClient }
): ChatHeadless {
return new ChatHeadlessImpl(config, clients?.bot, clients?.agent);
}
/**
* Provide an instance of {@link ChatHeadless} with all functionality built in,
* including internal-only configuration.
*
* @internal
*/
export function provideChatHeadlessInternal(
config: HeadlessConfig,
internalConfig: InternalConfig
): ChatHeadless {
const internalCore = provideChatCoreInternal(config, internalConfig);
return new ChatHeadlessImpl(config, internalCore);
}